溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux的簡單介紹和基礎(chǔ)命令(下)

發(fā)布時間:2020-07-15 21:25:00 來源:網(wǎng)絡(luò) 閱讀:320 作者:wx5d8a17c45cb5b 欄目:系統(tǒng)運(yùn)維

三、Linux的目錄結(jié)構(gòu)

樹形目錄結(jié)構(gòu)

/etc 管理員的家目錄

/home 普通用戶家目錄

/bin 所有用戶的命令文件目錄

/sbin 管理員命令文件目錄

/boot 啟動分區(qū)(grub啟動菜單,壓縮內(nèi)核等)

/usr 應(yīng)用程序目錄

/etc 配置文件目錄

/var 可變長文件目錄(日志)

/dev  設(shè)備文件目錄(磁盤,光驅(qū))

/tmp 臨時文件

/proc 硬件信息(CPU 內(nèi)存)

/lib 服務(wù)管理文件(systemctl)

查看文件內(nèi)容命令

cat [] 文件名 ... :查看文件內(nèi)容

more [] 文件名 .. :全屏方式分頁顯示文件內(nèi)容

less [] 文件名 ... :more命令的擴(kuò)展 END 可以查找 (man less進(jìn)行查看,這邊不是非常方便演示效果)

head 看文件開頭一部分內(nèi)容(默認(rèn)為10行)

tail:看文件尾部的內(nèi)容(默認(rèn)10行)

[root@lokott hello]# cat ifcfg-ens33 
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes"
[root@lokott hello]# more ifcfg-ens33 
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes"
root@lokott hello]# head ifcfg-ens33 
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
[root@lokott hello]# tail ifcfg-ens33 
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0d6ffef5-693f-4d48-88b5-d2e1a66cf9c4"
DEVICE="ens33"
ONBOOT="yes" 

統(tǒng)計文件內(nèi)容

wc(默認(rèn)全部統(tǒng)計)

  1. -l :統(tǒng)計行數(shù)
  2. -w:統(tǒng)計單詞統(tǒng)計數(shù)
  3. -c:統(tǒng)計字節(jié)數(shù)
[root@lokott hello]# cat 5.sh 
#!/bin/bash
read -p "please input a ip address!" ip
ping -c1 $ip &>/dev/null
if [ $? -eq 0 ]
then 
    echo "$ip is up."
else 
    echo "$ip is down"
fi
[root@lokott hello]# wc -l 5.sh 
9 5.sh
[root@lokott hello]# wc -w 5.sh 
30 5.sh
[root@lokott hello]# wc -c 5.sh 
147 5.sh
[root@lokott hello]# 

檢索和過濾文件內(nèi)容

grep命令:在文件中查找不顯示包含指定字符串的行

  • ? grep [options] PATTERN [FILE...]
  • ? grep [options] [-e PATTERN | -f FILE] [FILE...]
  1. -i :忽略大小寫
  2. -v:反轉(zhuǎn)查找,輸出與查找條件不相符的行
[root@lokott hello]# grep -i up 5.sh 
    echo "$ip is up."
[root@lokott hello]# grep -v 'bash$' /etc/passwd 
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
libstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
colord:x:997:995:User for colord:/var/lib/colord:/sbin/nologin
saslauth:x:996:76:Saslauthd user:/run/saslauthd:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
chrony:x:995:991::/var/lib/chrony:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:994:989:User for geoclue:/var/lib/geoclue:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
root@lokott hello]# grep -v 'bash$' /etc/passwd | wc -l  //將結(jié)果寫入管道后用wc命令顯示結(jié)果數(shù)量
40
[root@lokott hello]# 

Ctrl + r 可以進(jìn)行命令的搜索

[root@lokott hello]# vim ifcfg-ens33 用快捷鍵!進(jìn)入下面的模式輸入之前敲擊過的命令會自動查找
(reverse-i-search)`v': vim ifcfg-ens33

壓縮命令

gzip命令和bzip2命令:制作壓縮文件、解壓縮文件

  1. -9表示的是高壓縮比
  2. -d進(jìn)行解壓縮
[root@lokott hello]# ls
0.sh  5.sh  ifcfg-ens33  linux
[root@lokott hello]# gzip -9 0.sh 5.sh 
[root@lokott hello]# ls
0.sh.gz  5.sh.gz  ifcfg-ens33  linux
[root@lokott hello]# gzip -d 0.sh.gz 
[root@lokott hello]# gzip -d 5.sh.gz 
[root@lokott hello]# ls
0.sh  5.sh  ifcfg-ens33  linux
[root@lokott hello]# bzip2 -9 0.sh 5.sh 
[root@lokott hello]# bzip2 -d 0.sh.bz2 
[root@lokott hello]# bzip2 -d 5.sh.bz2 
[root@lokott hello]# ls
0.sh  5.sh  ifcfg-ens33  linux
[root@lokott hello]# 

tar命令:制作歸檔文件、釋放歸檔文件

  1. -c:創(chuàng)建文件包
  2. -x:解壓文件包
  3. -v:顯示詳細(xì)過程
  4. -f: 執(zhí)行
  5. -p:保留原有權(quán)限
  6. -t:查看壓縮包的內(nèi)容
  7. -C:解壓到某個地方去
  8. -z:gz格式
  9. -j:bz2格式
[root@lokott hello]# ls
0.sh  5.sh  ifcfg-ens33  linux
[root@lokott hello]# tar czvf if.tar.gz ifcfg-ens33 
ifcfg-ens33
[root@lokott hello]# ls
0.sh  5.sh  ifcfg-ens33  if.tar.gz  linux
[root@lokott hello]# tar xzvf if.tar.gz -C ../
ifcfg-ens33
[root@lokott hello]# cd ..
[root@lokott shell]# ls
0.sh  10.sh  1.sh  2.sh  3.sh  4.sh  5.sh  6.sh  8.sh  hello  ifcfg-ens33  linux
[root@lokott shell]# 
//如果是bz2格式就將文件格式的后綴名更換后用j替換z的命令

四、文本編輯器vi/vim(對vim編輯器的熟練操作可以提高工作效率)

作用

  1. 創(chuàng)建或修改文本文件
  2. 維護(hù)Linux系統(tǒng)中的各種配置文件

命令模式、輸入模式、末行模式(底線命令模式)轉(zhuǎn)換關(guān)系和操作

Linux的簡單介紹和基礎(chǔ)命令(下)

vim編輯器的相關(guān)操作命令

行號設(shè)置操作

  1. :set nu
  2. :set nu!和:set nonu 取消行號 注意?。?!記住切換為末行模式(底線命令模式)

定位行(命令模式下)

  1. gg:定位到開頭
  2. G:定位到結(jié)尾
  3. 3G:3表示行號,定位到第三行

復(fù)制粘貼刪除

  1. x:刪除光標(biāo)處的單個字符
  2. dd :刪除當(dāng)前光標(biāo)所在行
  3. dw:刪除光標(biāo)所在位置的一個單詞
  4. #dd :刪除從光標(biāo)所在行開始的#行內(nèi)容
  5. ddp:上下行調(diào)換位置
  6. yy:復(fù)制改行到剪切板
  7. nyy:復(fù)制n行到剪切板
  8. p:粘貼

vim編輯器中的其他操作

shift+r 替換 在光標(biāo)處進(jìn)行替換

PG UP 向上翻頁

PG DN 向下翻頁

:e ~/install.log 打開新的文件進(jìn)行編輯(末行模式下)

:r file——在編輯的數(shù)據(jù)中,讀入另一個檔案的數(shù)據(jù)。亦即將 『filename』 這個檔案內(nèi)容加到游標(biāo)所在行后面(末行模式下)

:w /opt/test.txt 將該文件寫入到opt下并且重新命名為test.txt文件但是不保持與源文件相同權(quán)限

:n1,n2s/word1/word2/g 在n1到n2行之間將所有的word1換為word2

:%s/word1/word2/g 將所有的word1換為word2

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI