{"id":30579492,"url":"https://github.com/dakrauth/scripts","last_synced_at":"2025-08-29T04:11:32.610Z","repository":{"id":66601612,"uuid":"172091338","full_name":"dakrauth/scripts","owner":"dakrauth","description":"🛠   Bash thingies","archived":false,"fork":false,"pushed_at":"2025-07-12T22:01:44.000Z","size":95,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-13T00:13:42.771Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dakrauth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-02-22T15:43:25.000Z","updated_at":"2025-07-12T22:01:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"cbd357cc-3a3c-48b6-965f-46402ebe7568","html_url":"https://github.com/dakrauth/scripts","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dakrauth/scripts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dakrauth%2Fscripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dakrauth%2Fscripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dakrauth%2Fscripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dakrauth%2Fscripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dakrauth","download_url":"https://codeload.github.com/dakrauth/scripts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dakrauth%2Fscripts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272625092,"owners_count":24966288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-29T04:11:32.098Z","updated_at":"2025-08-29T04:11:32.595Z","avatar_url":"https://github.com/dakrauth.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Scripts\n=======\n\nScripts, configurations, and setup for macOS and Linux\n\n    cd ~\n    git clone git@github.com:dakrauth/scripts\n    git clone git@github.com:powerline/fonts.git\n    ./scripts/etc/link.sh scripts/home\n\nSummary\n-------\n\n├── README.md\n├── etc\n│   ├── common.sh\n│   ├── link.sh\n│   ├── linux.sh\n│   ├── load.sh\n│   ├── macos.sh\n│   └── python.sh\n└── home\n    └── bin\n        ├── dbauto\n        ├── dbbak\n        ├── dbutils\n        ├── hexdump\n        ├── markdown\n        ├── pycat\n        ├── pypi\n        ├── qtest\n        ├── setup\n        │   ├── macos\n        │   │   ├── Brewfile\n        │   │   ├── apps.txt\n        │   │   ├── defaults.sh\n        │   │   ├── iTermProfiles.json\n        │   │   └── init.sh\n        │   └── setup.sh\n        ├── sshkx\n        ├── sys\n        └── wiki\n\n\nBash Quick Docs\n===============\n\nShell parameter substitutions\n-----------------------------\n\n\u003chttps://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html\u003e\n\n    # $ FILE=\"example.tar.gz\"\n    # $ echo \"${FILE%%.*}\"      # =\u003e example\n    # $ echo \"${FILE%.*}\"       # =\u003e example.tar\n    # $ echo \"${FILE#*.}\"       # =\u003e tar.gz\n    # $ echo \"${FILE##*.}\"      # =\u003e gz\n    # $ basename $FILE .gz      # =\u003e example.tar\n    # $ basename $FILE .tar.gz  # =\u003e example\n    # ${variable%pattern}       # Trim the shortest match from the end\n    # ${variable##pattern}      # Trim the longest match from the beginning\n    # ${variable%%pattern}      # Trim the longest match from the end\n    # ${variable#pattern}       # Trim the shortest match from the beginning\n\nShell variables\n---------------\n\n* `$1`, `$2`, `$3`, ... are the [positional parameters](https://www.gnu.org/software/bash/manual/html_node/Positional-Parameters.html).\n* `\"$@\"` is an array-like construct of all positional parameters, `{$1, $2, $3 ...}`.\n* `\"$*\"` is the IFS expansion of all positional parameters, `$1 $2 $3 ...`.\n* `$#` is the number of positional parameters.\n* `$-` current options set for the shell.\n* `$$` pid of the current shell (not subshell).\n* `$_` most recent parameter (or the abs path of the command to start the current shell immediately after startup).\n* `$IFS` is the (input) field separator.\n* `$?` is the most recent foreground pipeline exit status.\n* `$!` is the PID of the most recent background command.\n* `$0` is the name of the shell or shell script.\n\n[Special Parameters](https://www.gnu.org/software/bash/manual/html_node/Special-Parameters.html).  \n[All environment variables set by the shell](https://www.gnu.org/software/bash/manual/html_node/Shell-Variables.html).  \n[Reference Manual Variable Index](https://www.gnu.org/software/bash/manual/html_node/Variable-Index.html).\n\nFile tests, returns true if...\n------------------------------\n\n* `-e` file exists\n* `-a` file exists. This is identical in effect to -e. It has been \"deprecated,\" [1] and its use is discouraged.\n* `-f` file is a regular file (not a directory or device file)\n* `-s` file is not zero size\n* `-d` file is a directory\n* `-b` file is a block device\n* `-c` file is a character device\n* `-p` file is a pipe\n* `-h` file is a symbolic link\n* `-L` file is a symbolic link\n* `-S` file is a socket\n* `-t` file (descriptor) is associated with a terminal device\n* `-r` file has read permission (for the user running the test)\n* `-w` file has write permission (for the user running the test)\n* `-x` file has execute permission (for the user running the test)\n* `-g` set-group-id (sgid) flag set on file or directory\n* `-u` set-user-id (suid) flag set on file\n* `-k` sticky bit set\n* `-O` you are owner of file\n* `-G` group-id of file same as yours\n* `-N` file modified since it was last read\n* `f1 -nt f2` file f1 is newer than f2\n* `f1 -ot f2` file f1 is older than f2\n* `f1 -ef f2` files f1 and f2 are hard links to the same file\n* `!` \"not\" -- reverses the sense of the tests above (returns true if condition absent).\n\nColors\n------\n\n### `LSCOLORS`\n\nThe color designators are as follows:\n\n* `a` black\n* `b` red\n* `c` green\n* `d` brown\n* `e` blue\n* `f` magenta\n* `g` cyan\n* `h` light grey\n* `A` bold black/dark grey\n* `B` bold red\n* `C` bold green\n* `D` bold brown/yellow\n* `E` bold blue\n* `F` bold magenta\n* `G` bold cyan\n* `H` bold light grey / bright white\n* `x` default fg or bg\n\nNote that the above are standard ANSI colors. The actual display may differ depending on the color\ncapabilities of the terminal in use.\n\nThe order of the attributes are as follows:\n\n1.  directory\n2.  symbolic link\n3.  socket\n4.  pipe\n5.  executable\n6.  block special\n7.  character special\n8.  executable with setuid bit set\n9.  executable with setgid bit set\n10. directory writable to others, with sticky bit\n11. directory writable to others, without sticky bit\n\n`\\[{attr};{fg};{bg}m`\n\nThe first character is `ESC` which has to be printed by pressing `CTRL+V` and then `ESC` on the\nLinux console or in xterm, konsole, kvt, etc. (`CTRL+V ESC` is also the way to embed an\nescape character in a document in vim.).\n\nThen `{attr}`, `{fg}`, `{bg}` have to be replaced with the correct value to get the corresponding effect.\n`attr` is the attribute like blinking or underlined etc. `fg` and `bg` are foreground and background colors respectively.\nYou don't have to put braces around the number. Just writing the number will suffice.\n\n`{attr}` is one of following:\n\n* `0`   Reset All (normal mode)\n* `1`   Bright\n* `2`   Dim\n* `3`   Underline\n* `5`   Blink\n* `7`   Reverse\n* `8`   Hidden\n\n`{fg}` is one of the following:\n\n* `30` Black\n* `31` Red\n* `32` Green\n* `33` Yellow\n* `34` Blue\n* `35` Magenta\n* `36` Cyan\n* `37` White\n\n`{bg}` is one of the following:\n\n* `40` Black\n* `41` Red\n* `42` Green\n* `43` Yellow\n* `44` Blue\n* `45` Magenta\n* `46` Cyan\n* `47` White\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdakrauth%2Fscripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdakrauth%2Fscripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdakrauth%2Fscripts/lists"}