你都私藏了哪些牛逼的命令行?
我常用的也無非就是 ls啊、 &>啊、grep啊、sed啊、awk啊、|啊、ln啊、mysql啊、之類的吧。
這些命令雖然強大,但是組合使用的話才能顯示出牛逼來。
lshw,可以詳細地羅列出系統的硬體結構機器信息。
rsync -a --progress
linux下拷貝大文件時候可以看進度的。
rm -rf /*
此招一出,全場皆變色
rm -rf /* reboot
sudo rm * -rf shutdown
find * -name "*.swp" -exec rm {} ;
一次性刪除所有煩人的vim 交換文件。
find * -name ".png" -exec bash -c mv $0 ${0////_} {} ;
遞歸重命名文件目錄中的png圖片,把路徑中的/替換為_放到.路徑下。
tarcp () { tar cf - "${@:1:$#-1}" | tar xvpf - -C "${!#}" ; }
功能類似
rsync --relative
。相比傳統的cp
,可以保留源文件的(相對)路徑到目標,並保留目標裏已有的同名路徑下的其他文件,比如:tarcp path1/a path2/b target/
會創建target/path1
和target/path2
兩個新目錄,並把a
和b
複製過去。如果已有target/path2/c
文件,則不會重新創建target/path2
目錄,而且會保留c
文件(cp
會重新創建target/path2/
然後c
文件就沒了)。rm -rf /*
awk,sed,grep組合好啥都能幹
特殊符號加轉義:
echo ^$()*+-?[]| | perl -pe s/([^wds])/\$1/g
複製文件到多個目錄( file -&> path_1 path_2 path_3 )
echo "path_1 path_2 path_3" | xargs -n 1 cp -v file
設置 ctrl + l 為 ls -l
bind -x "C-l":ls -l
alias 自定義可傳參命令
alias n=_f(){ echo $1; }; _f
天氣預報:
curl wttr.in/guangzhou
翻譯:
curl v2en.co/world
生成指定位數的隨機數:
alias random=_f(){ if [ -z "$1" ]; then echo $RANDOM; else num=$(echo "$1" | perl -ne print if /^d+$/);[ -z "$num" ] echo "syntax error" return; eval echo $(perl -e print "$[ $RANDOM % 10 ]"x$num\); fi }; _f
# eg: 生成 43 位的隨機數
# random 43lsof 查看文件打開情況
echo 1450 &> /sys/class/net/eth0/mnt ######寫入命令了
推薦閱讀: