1、!! 上一条命令,最常见是忘记了输入sudo时候用
2、{} 能够生成一些列值,例如 echo abc{3,4,5} 输出是 abc3 abc4 abc5
3、拷贝所有pdf文件到当前的pdf文件夹
find . -name '*.pdf' -type f -exec sh -c 'exec cp -f "$@" ./pdf/' {} +
4、alt+. 输入上一次命令的参数
5、按文件修改时间列表
5、按文件修改时间列表
ll -t //升序排序(默认的) ll-t |tac //降序排序6、使用pgrep快速查找一个PID
7、反复执行一个命令并在屏幕上输出pgrep遍历目前正在运行的进程然后列出符合查找规则的进程ID(PID)。
pgrep ssh这条命令会列出所有与ssh有关的进程。
8、返回你上一个所在目录watch会反复运行一个命令,并在屏幕上打印输出。它可以让你实时的观察程序的输出变化。默认情况下,程序每2秒运行一次。watch命令与tail命令很相似。
watch -d ls -l这条命令会监视当前目录的所有文件,并且高亮文件所发生的改变。
你可以使用如下命令返回你上一次所在的目录:
cd -
9.聪明地创建父目录
如下命令可以帮助你创建所有你需要的目录,即便是他们还不存在。为什么要浪费时间做一些愚蠢的事情比如:mkdir make ; cd make ; mkdir all ; cd all ; mkdir of ; cd of … 你说到点子上了,使用mkdir -p!
mkdir -p /home/adam/make/all/of/these/directories/
10.删除一整行
如果你已经输入一长串的命令,但是你又不在需要他们了,那么你可以使用如下命令直接删除一整行:
CTRL+U这个其实是删除光标所在之前的字符,ctrl+k是删除光标以后的字符补充个跳到行首时Ctrl+a,跳到行末是Ctrl+e
11.批量改名
最近想导出上传一些照片,可是从相机导出来的照片扩展名都是JPG,而在Linux下,上传软件只认识jpg等小写扩展名,需要将全部扩展名改成小写。
rename命令是Linux下功能非常强的的重命名工具,利用正则表达式使得其使用地非常灵活。
rename命令的格式:rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]-v, --verboseVerbose: print names of files successfully renamed.简单的rename使用命令:
-n, --no-actNo Action: show what files would have been renamed.
-f, --forceForce: overwrite existing files.
- 字母的替换
rename "s/AA/aa/" * //把文件名中的AA替换成aa
- 修改文件的后缀
rename "s/.html/.php/" * //把.html 后缀的改成 .php后缀
- 批量添加文件后缀
rename "s/$/.txt/" * //把所有的文件名都以txt结尾
- 批量删除文件名
rename "s/.txt//" * //把所有以.txt结尾的文件名的.txt删掉
- .JPG扩展名变.jpg
rename "s/.JPG/.jpg/" *