記錄一些指令,方便之後快速回憶!
mancommand → manual pageh- 秀出快捷鍵,像是要在視窗內 moving、searching、jumping,可以怎麼下/pattern- 往下找符合 pattern 的字串n- 跳到下一個符合 pattern 的字串N- 跳到上一個符合 pattern 的字串
Enter- 往下移動一行Space- 往下移動一頁g- 移動到 manual page 的最上方G- 移動到 manual page 的最下方q- 離開 manual page
which python3 → /opt/homebrew/bin/python3which- locate a program file in the user’s path
mkdir -p newdir/product/reviews-p- Create intermediate directories as required.
chmod u=rwx,g+x,o= sales.data- (1)
ugoa- u for user, g for group, o for other, a for all. - (2)
+-=(3)rwx
- (1)
chmod 754 file- U → rwx → 111 → 7
- G → r-x → 101 → 5
- O → r– → 100 → 4
umask- a command that determines the settings of a mask that controls how file permissions are set for newly created files.find [path...] [expression]- Recursively finds files in path that match expression.find . -name "Screen*"(-iname會忽略大小寫)find . -ls- 對找到的檔案們進行lsfind . -mtime num_days- 找出所有num_days-old 的檔案find . -mtime +10 -mtime -13- more than 10 days old, but less than 13 days old
find . -size +500k -size -10Mfind . -newer filefind . -exec command {} \;- Run command against all the files that are found.find root_path -name '*.ext' -exec wc -l {} \;- Run a command for each file (use {} within the command to access the filename)
find . -type d -newer b.txt- find directories that are newer than a given file
locate pattern- List files that match pattern.- When you run locate it is simply querying the index or database created by updatedb and not looking at each file on the system.
- This is really, really fast.
- The down side is that the data is not in real time.
- 除了
diff也有sdiff及vimdiff grep -v pattern file- Selected lines are those not matching any of the specified patterns.- -v, –invert-match
- The pipe (
|) means take the standard output from the preceding command and pass it as the standard input to the following command. - Pipe Output to a Pager
strings ~/Documents/test.mp3 | less
- Redirection
- standard input → stdin → 0
- standard output → stdout → 1
- standard error → stderr → 2
>- Redirects standard output to a file, overwriting (truncating) any existing contents of the file. If no file exists, it creates one.ls -lF /opt/apache > files.txtsame asls -lF /opt/apache 1> files.txt>>- Redirects standard output to a file and appends to any existing contents. If no file exists, it creates one.ls -lF /opt/apache >> files.txt<- Redirects input from a file to the command preceding the less-than sign.sort < files.txtsame assort 0< files.txtsort < files.txt > sorted_files.txt- The output of the sort command is then redirected to the sorted_files.txt file.&- Used with redirection to signal that a file descriptor is being used instead of a file name.2>&1- Combine standard error and standard output.2> file- Redirect standard error to a file.ls here not-here 1> out 2> out.errcat out→ herecat out.err→ ls: not-here: No such file or directory
ls here not-here > out.both 2>&1cat out.both→ ls: not-here: No such file or directory \n here
ls here not-here > /dev/null 2>&1- Redirect output to nowhere.
scp source destination- Copy source to destination.scp test.txt linuxsvr1:~/
echo 'export xxx="ooo"' >> ~/.bash_profile- To make yourxxxpersist between logins, add the value to your personal initialization files.alias ll='ls -l'(add them to one of your personal initialization files, like.zshrc, to make them persist between sessions)- You could create these shortcuts to help you feel more at home.
.zshrc編輯完後可source .zshrc,就不用得重開一個新的 terminal 才會有新的設定history(可設定環境變數HISTSIZE,值越大,保存越多 command history)- Tab Completion
- Dealing with Long Shell Commands: The backslash (
\) is the line continuation character. printenv– print out the environment variables (env也可以)crontab- Schedule cron jobs to run on a time interval for the current user.