!$
!$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串。如:你可能会这样:
$mkdir mydir
$mv mydir yourdir
$cd yourdir
可以改成:
$mkdir mydir
$mv !$ yourdir
$cd !$
‘ALT+.’ or ‘ .’
热建alt+. 或 esc+. 可以把上次命令行的参数给重复出来。
du -s * | sort -n | tail
列出当前目录里最大的10个文件。
date -d@1234567890
时间截转时间
在命令行前加空格,该命令不会进入history里。
echo “ls -l” | at midnight
在某个时间运行某个命令。
ssh user@server bash < /path/to/local/script.sh
在远程机器上运行一段脚本。这条命令最大的好处就是不用把脚本拷到远程机器上。
ssh user@host cat /path/to/remotefile | diff /path/to/localfile -
比较一个远程文件和一个本地文件
ar
将许多档案备存成一个或多个档案
◎ ar -rcv 备存档名 欲备存档名1 欲备存档名2 ...
将「欲备存档名1 欲备存档名2 ...」及所有您指定的档案,备存至「备存盘名」中。
参数 -r:在新加入组成档时,检查备存档案中的组成党,如果重复的话,就取而代之。
参数 -c:建立备存档案。
参数 -v:显示详细信息。
◎ ar -t 备存档名 列出「备存档名」中之文件名
◎ ar -x 备存盘名 取出「备存盘名」中所有档案
◎ ar -x 备存盘名 备存盘中档案之档名 取出「备存盘名」中某些档案
du
取得文件夹大小
◎ du 文件夹路径 取得该「文件夹路径」中所有目录 (包含其下子目录) 的文件夹大小
◎ du -s 文件夹路径 取得该「文件夹路径」的文件夹大小 (不包含子目录)
◎ du -h 文件夹路径 以人类较易阅读的方式显示该「文件夹路径」的文件夹大小 (不包含子目录)
ln
建立档案或目录的链接文件
若修改透过 ln 指令建立出来的链接文件,原本的档案内容也会跟着改变
◎ ln 檔名 连结档名称 建立「檔名」的硬连结档,而该连结档名为 「连结档名称」
◎ ln -s 檔名 连结档名称 建立「文件名」的符号链接文件,而该连结档名为 「连结档名称」
tar
建立/解开 .tar 封装档
◎ tar -cvf 封装档名称.tar 文件夹名称 将 「文件夹名称」封装成为 「封装档名称.tar」档案
◎ tar -czvf 压缩封装档名称.tar.gz 文件夹名称 将 「文件夹名称」压缩成为 「压缩封装档名称.tar.gz」压缩文件
◎ tar -cjvf 压缩封装档名称.tar.bz2 文件夹名称 将 「文件夹名称」压缩成为 「压缩封装档名称.tar.bz2」压缩文件
◎ tar -xvf 檔名.tar.gz 解开 「檔名.tar」封装档
◎ tar -xzvf 檔名.tar.gz 解开 「檔名.tar.gz」压缩封装档
◎ tar -xjvf 檔名.tar.bz2 解开 「檔名.tar.bz2」压缩封装档
dos2unix和unix2dos
Linux和Windows文本文件的行结束标志不同。在Linux中,文本文件用"/n"表示回车换行,而Windows用"/r/n"表示回车换行。所以在Linux中使用Windows的文本文件常常会出现错误。为了避免这种错误,Linux提供了两种文本格式相互转化的命令:dos2unix和unix2dos,dos2unix把"/r/n"转化成"/n",unixtodos把"/n"转化成"/r/n"。
命令dos2unix和unix2dos的使用非常简单,格式为:dos2unix
filename
以二进制的放置读取档案内容:od