Linux 常用命令
基本
-
cd -
返回到上一次的工作目錄 -
export LANG=en_US
,export 對於環境變量的設置也能作用於子shell -
ps -ef | grep nginx
,搜索,這兒用到了管道 -
passwd root
修改密碼 -
top
監控CPU 內存等 -
$?
上一個命令執行的退出狀態,成功爲0,不成功爲非0 -
hostname
獲取 ip -
alias vi="vim"
在/etc/profile (用戶登錄自運行配置文件)的末尾添加vi的別名設置
ls 常用參數
-a
列出所有(含隱藏文件等):-ltr
按照時間升序-
-lt
按照時間降序 -
統計文件數目
wc -l
輸出文件行數,也就是文件的個數可以通過
grep
過濾文件123456789[root@** _posts]# ls -ltotal 156-rw-r--r-- 1 root root 13607 Aug 26 14:07 android-interview.md-rw-r--r-- 1 root root 16287 Aug 26 14:07 arrays-sort.md-rw-r--r-- 1 root root 2951 Aug 30 12:03 common-tools.md[root@** _posts]# ls | wc -l3[root@** _posts]# ls | grep ".md" | wc -l3
查找文件
locate
locate 是基於內部系統表的, 速度快, 但是可能更新不即時find . -name "*.sh" -or -name "*.c"
find 即時查找, 速度相對較慢
端口占用情況
netstat -tnpl | grep 12
kill -9 42312
殺掉進程,-9 表示強制殺
sed 使用
sed '$d' datafile
除最後一行,其餘行都被顯示sed '/my/d' datafile
除包含 my 的行,其餘行都被顯示
這兩個命令並不會真的刪除文本里的某些行sed -e 's/\.md$//'
去掉後綴.md
sed -e 's/^/http:\/\/www.alijava.com\//'
加上網站前綴sed 's/old/new/'
將old
替換爲new
shell 常見用法
$#
表示接收到的參數個數$1
表示第幾個參數
1 2 3 4 5 6 7 8 9 10 11 12 13
|
if [ $# -ne 4 ] then echo "usage: bash autofetch.sh <space> <windows/linux> <command> <number>" exit -1 fi which=$1 if [ $2 = "windows" ] then machine=WINDOWS elif [ $2 = "linux" ] then machine=LINUX fi
|
vim 常用命令
方向移動
-
h, j, k, l
分別代表向左、下、上、右移動在這些j前加一個數字,表示移動的倍數。例如,”10j“表示向下移動10行
-
^
移動光標到行首 0(數字0)也可以實現相同功能
^ 是移到第一個到行首的第一個非空白字符
0 只是移動到行首,不區分空白或非空白 -
$
移動光標到行尾 -
gg
回到文件開頭H
也可以回到文件最上面 G
到最下面
複製粘貼
dd
刪除,前面加上數字表示刪除多少行,比如100dddw
刪除單詞d$
刪除到這行末尾的單詞yy
複製p
粘貼
它們都可以加上數字參數表示操作多少行
輸入文字
i
當前文字位置插入 inserta
當前文字的後面插入 appendo
下一行插入w
光標到下一個單詞的詞首e
移動光標到下一個單詞的結尾
查找替換
/string
查找n
查找下一個匹配的:set nu
顯示行號
保存
:wq
寫入並退出:q!
強制退出 不保存修改