- 系統環境變量配置文件:
/etc/profle /etc/bashrc
個人環境變量配置文件:
.bash_profile(用戶登錄時執行)
.bashrc(登錄或打開shell時執行)
.bash_history(歷史命令)
.bash_logout(退出shell時執行)
#後面的內容表示註釋,使用#時,#前面應加上空格,否則就不是註釋。
\ 脫義字符(類似其它語言的轉義字符)
Cut 要想用-f設置區塊,必須用-d設置分隔符
Sort 要想使用-k對區域內的字符串排序,必須用-t設置分隔符
參數後跟分隔符的時候中間可以沒有空格,分隔符可以不用引號括起來了,跟數字也一樣,比如:head -n5 /etc/passwd | sort -t: -k3
Uniq 不會改變源文件,如果要將去重的結果存下來,應該將結果輸出到新文件。
Tee:將文件寫入後面的文件,並顯示在屏幕上,相當於把輸出流分成了兩份。例子:echo "abcdefg" |tee hijklmn.txt
Split –l(按行) -b(按塊大小)
!$: 上條命令的最後一個變量
2.
1)臨時更改:HISTSIZE=10000
永久更改:
進入/etc/profile
普通用戶沒有權限,所以切換到root。
2) Shell中雙引號保留原有字符的特殊含義,單引號可以去掉原有字符的特殊含義。所以我們有兩種改法:PS1="[\u@\h \W]\\$ ";PS1=‘[\u@\h \W]\$ ‘
3) ls|tr '[a-z]' '[A-Z]' 能將改變的結果列出來
使用for循環加tr命令,能直接改變文件的名字。
4) sort -t: -k5 passwd
5) cut -d: -f3 passwd
6)/etc/profile : 所有用戶在登錄時被執行,裏面保存着環境變量和開機需要執行的一些命令。
/etc/bashrc : 所有用戶登錄需要執行的命令
.bash_profile:登錄或者打開shell都會被執行
.bashrc 個人用戶在登錄時被執行,裏面保存着環境變量和開機需要執行的一些命令。登錄時執行一次
/etc(比如:/etc/profile和/etc/bashrc)文件夾下的配置文件時系統級的配置文件,所有用戶都會使用;.開頭的文件(比如.bashrc和.bash_profile)是用戶級的文件;/etc/profile和.bash_profile只在用戶登錄的時候執行;/etc/bashrc和.bashrc文件每打開一個bash都會被執行。*profile一般都會調用*bashrc。
~/.bash_profile 是交互式、login 方式進入 bash 運行的,意思是隻有用戶登錄時纔會生效。
~/.bashrc 是交互式 non-login 方式進入 bash 運行的,用戶不一定登錄,只要以該用戶身份運行命令行就會讀取該文件。
# /etc/profile # System wide environment and startup programs, for login setup
# /etc/bashrc # System wide functions and aliases
# .bash_profile # User specific environment and startup programs
#.bashrc # User specific aliases and functions
是
7)聲明一個變量,使其進入子shell後也生效
8)變量名可以用數字字母下劃線,但是不能以數字開頭。
9)當命令在運行時按ctrl + z,命令就會在後臺停止,再輸入bgn,命令會在後臺運行,輸入fgn命令會被調到前臺運行。在命令後加上 &後執行,命令會直接在後臺運行。
10)ls test*
11) ls |tee abc.txt
12)別名:alias la='ll -a',輸入la,顯示所有文件
也可以使用變量:la='ls -a'
13)bash shTest.sh > abc.log 2>&1 &
shTest.sh運行後會有標準輸出和標準錯誤輸出,> abc.log表示將標準輸出重定向到abc.log ,2>&1表示將標準錯誤輸出重定向到標準輸出。
14) split -b 10M passwd byBolockSize
split -l 5 passwd byLine
15) ;就是執行完這一條語句執行下一條語句,&&是與的意思,當&&前面的命令爲false(沒有返回值,執行失敗)時,式子的結果一定是false,沒必要在看(執行)&&後面的命令;||是或的意思,當||前面的命令執行結果爲true(命令執行成功),式子的結果一定是true,沒必要再執行||後面的命令。
lll&&ls
echo 'lll&&ls'
echo 左邊是假的,式子結果一定爲假,右邊不會執行
pwd||ls
echo 'pwd||ls'
echo 左邊是真的,式子結果一定爲真,右邊式子不會執行
pwd&&ls
echo 'pwd&&ls'
echo 會執行
lll||ls
echo 'lll||ls'
echo 會執行
echo 或運算符用在,需要式子執行其中一個的時候,即不確定前面的式子是否會執行失敗,後面的式子當做前面的式子
echo 執行失敗時的保險
echo 與運算符用在,當前面的式子執行成功了之後,纔去執行後面的式子,適合有序執行的幾條命令,
echo 有一條命令執行出錯,後面的命令都會停止執行
16)把設置變量的語句添加在某用戶根目錄下的.bashrc文件裏面。
17)env只能列出系統變量,set能列出系統變量和用戶變量。