部分文件管理命令及其常見(jiàn)用法
一.目錄相關(guān)命令
1.cd( change directory )改變工作目錄
cd[/PATH/TO/SOMEDIR]
cd 或cd ~:回到當(dāng)前用戶的家目錄
cd ~USERNAME:切換至指定用戶的家目錄
cd -:在上一次所在目錄與當(dāng)前目錄之間來(lái)回切換
cd.jpg
先cd到gentoo的家目錄下,然后返回到當(dāng)前用戶root家目錄下,最后切換回上個(gè)目錄(gentoo家目錄)。
2.ls(list)列出指定目錄下的內(nèi)容
ls [OPTION]... [FILE]...
-a:--all 顯示所有文件,包括隱藏文件
-A:--almost-all 顯示除.和..之外的所有文件
-l:--long,長(zhǎng)格式列表,即顯示文件的詳細(xì)屬性信息
-h: --human-readable:對(duì)文件大小單位換算;換算后結(jié)果可能會(huì)非精確值
-r :reverse,逆序顯示
-R:recursive,遞歸顯示
-d:查看目錄自身而非其內(nèi)部的文件列表
ls.jpg
3.pwd(printing working directory)顯示工作目錄
pwd.jpg
4.mkdir(make directory)創(chuàng)建目錄
mkdir [option]...directory...
-p:自動(dòng)按需創(chuàng)建父目錄
-v:verbose,顯示詳細(xì)過(guò)程
-m:MOde:直接給定權(quán)限
mkdir -pv.jpg
mkdir -m.jpg
rmdir(remove empty directories )刪除目錄
rmdir [option]...directory...
-p :刪除某目錄后,如果其父目錄為空,則一并刪除之
-v:顯示過(guò)程

5.tree
-L level:指定要顯示的層級(jí)

二、文件查看類(lèi)命令
1.cat(concatenate)連續(xù)將文件的內(nèi)容顯示在屏幕上
cat [OPTION]... [FILE]...
-n:給顯示的文本行編號(hào)
-b:打印出行號(hào)(空白行不標(biāo)行號(hào))
-E:顯示行結(jié)束符$
cat.jpg
2.file文件內(nèi)容類(lèi)型查看命令
file /PATH/TO/SOMEWHERE
file.jpg
3.tac反序輸出文件的內(nèi)容
tac.jpg
文件的最后一行顯示在第一行
4.less命令和more命令
less可以按鍵盤(pán)上下方向鍵顯示上下內(nèi)容,more不能通過(guò)上下方向鍵控制顯示; less不必讀整個(gè)文件,加載速度會(huì)比more更快;less退出后shell不會(huì)留下剛顯示的內(nèi)容,而more退出后會(huì)在shell上留下剛顯示的內(nèi)容
5.head命令和tail命令
head命令:
查看文件的前n行:
head [options] FILE
-n #
-#
tail命令
查看文件的后n行:
tail [options] FILE
-n #
-#
-f:查看文件尾部?jī)?nèi)容結(jié)束后不退出,跟隨顯示新增的行
三、文件管理命令
1.cp(copy)復(fù)制
單源復(fù)制:
cp [option]... [-T] SOURCE DEST
如果DEST不存在:則事先創(chuàng)建此文件,并復(fù)制源文件的數(shù)據(jù)流至DEST中;
如果DEST存在:
如果DEST是非目錄文件:則覆蓋目標(biāo)文件;
如果DEST是目錄文件:則先在DEST目錄下創(chuàng)建一個(gè)與源文件同名的文件,并復(fù)制其數(shù)據(jù)流
多源復(fù)制
cp [option]... [-T] SOURCE... DIRECTORY
cp [option]... -t DIRECTORY SOURCE...
如果DEST不存在:錯(cuò)誤
如果DEST存在:
如果DEST是非目錄文件;錯(cuò)誤
如果DEST是目錄文件:分別復(fù)制每個(gè)文件至目標(biāo)目錄中,并保持原名
選項(xiàng)
-i:交互式復(fù)制,即覆蓋之前提醒用戶確定
-f:強(qiáng)制覆蓋目標(biāo)文件;
-r,-R:遞歸復(fù)制目錄;
-d:復(fù)制符號(hào)鏈接文件本身,而非其指向的源文件
-a:-dR --preserve=all,archive,用于實(shí)現(xiàn)歸檔
--preserve=mode:權(quán)限 ownership:屬主和屬組 timestamps:時(shí)間戳 context:安全標(biāo)簽 xattr:擴(kuò)展屬性 links:符號(hào)鏈接 all:上述所有屬性
ll /etc
lrwxrwxrwx. 1 root root 14 Apr 22 13:38 system-release -> centos-release
[root@centos6 etc]# cp -d /etc/system-release /tmp
ll /tmp
lrwxrwxrwx. 1 root root 14 May 10 01:54 system-release -> centos-release
2.mv(move) 移動(dòng)文件或者將文件改名
-i:交互式
-f:強(qiáng)制
3.rm(remove)
-i:交互式
-f:強(qiáng)制
-r:遞歸
使用命令行展開(kāi)功能,
1.創(chuàng)建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b
創(chuàng)建目錄1.jpg
2.在/tmp目錄下創(chuàng)建目錄:x_y, x_z, q_y, q_z
創(chuàng)建目錄2.jpg
文件的元數(shù)據(jù)信息有哪些,分別表示什么含義,如何查看?如何修改文件的時(shí)間戳信息
元數(shù)據(jù).jpg
stat查看文件或者文件系統(tǒng)的狀態(tài)
stat.jpg
touch命令:
-c:指定的文件路徑不存在時(shí)不予創(chuàng)建
-a:僅修改access time
-m:僅修改modify time
-t: STAMP
[[cc]]YY]MMDDhhmm[.ss]
在/tmp目錄下創(chuàng)建以tfile開(kāi)頭,后跟當(dāng)前日期和時(shí)間的文件
touch.jpg
touch tfile-$(date +%F-%H-%M-%S)
復(fù)制/etc目錄下所有以p開(kāi)頭,以非數(shù)字結(jié)尾的文件或目錄到/tmp/mytest1目錄中
cp應(yīng)用.jpg
創(chuàng)建用戶tom,指定UID為5001,指定家目錄為/tmp/tom, 指定shell為/bin/zsh, 指定基本組為tom,附加組為jack
tom.jpg
常用的用戶以及文件管理命令
1.類(lèi)別
用戶
管理員:0
普通用戶:1-65535
系統(tǒng)用戶:1-499(CentOS6),1-999(CentOS7)
登錄用戶:500-60000(CentOS6),1000-60000(CentOS7)
/etc/passwd
用戶名:密碼:UID:GID:用戶詳細(xì)說(shuō)明信息:用戶家目錄:用戶默認(rèn)shell
/etc/shadow
用戶名:加密的密碼:最近一次更改密碼的日期:密碼最小使用期限:密碼最大使用期限:密碼警告時(shí)間:密碼禁用期:賬戶的過(guò)期日期:保留字段
組
管理員:0
普通用戶:1-65535
系統(tǒng)用戶:1-499(CentOS6),1-999(CentOS7)
登錄用戶:500-60000(CentOS6),1000-60000(CentOS7)
/etc/group
組名:組密碼:組ID:以當(dāng)前組為附加組的用戶列表
命令
groupadd命令:添加組
groupadd [選項(xiàng)] group_name
-g GID:指定GID:默認(rèn)是上一個(gè)組的GID+1
-r:創(chuàng)建系統(tǒng)組
groupmod命令:修改組屬性
groupmod [選項(xiàng)]Group
-g GID:修改GID
-n new_name:修改組名
groupdel:刪除組
groupdel [選項(xiàng)] GROUP

useradd命令:創(chuàng)建用戶
useradd [選項(xiàng)] 登錄名
-u,--uid UID:指定UID
-g,--gid GROUP:指定基本組ID,此組得事先存在
-G,--groups GROUP1[,GROUP2,...[,GROUPN,]]:指明用戶所屬的附加組,多個(gè)組之間用逗號(hào)分隔
-c,--comment COMMENT:指明注釋信息
-d,--home HOME DIR:以指定的路徑為用戶的家目錄;通過(guò)復(fù)制/etc/skel此目錄并重命名實(shí)現(xiàn);指定的家目錄路徑如果事先存在,則不會(huì)為用戶復(fù)制環(huán)境配置文件;
-s,--shell SHELL:指定用戶的默認(rèn)shell,可用的所有shell列表存儲(chǔ)在/etc/shells文件中
-r,--system:創(chuàng)建系統(tǒng)用戶
注意:創(chuàng)建用戶時(shí)的諸多默認(rèn)設(shè)定配置文件為/etc/login.defs
useradd -D:顯示創(chuàng)建用戶的默認(rèn)配置
useradd -D 選項(xiàng):修改默認(rèn)選項(xiàng)的值
修改的結(jié)果保存于/etc/default/useradd文件中
usermod命令:修改用戶屬性
-u,--uid UID:修改用戶的ID為此處指定的新UID
-g,--gid GROUP:修改用戶所屬的基本組
-G,--groups GROUP1[,GROUP2,...[,GROUP2N]]:修改用戶所屬的附加組:原來(lái)的附加組會(huì)被覆蓋
-a,--append:與-G一同使用,用于為用戶追加新的附加組;
-c,--comment COMMENT:修改注釋信息
-d,--home HOME_DIR:修改用戶的家目錄;用戶原有的文件不會(huì)被轉(zhuǎn)移至新位置
-m,--move-home :只能與-d選項(xiàng)一同使用,用于將原來(lái)的家目錄移動(dòng)為新的家目錄
-l,--login NEW_LOGIN:修改用戶名
-s,--shell SHELL:修改用戶的默認(rèn)shell
-L,--lock:鎖定用戶密碼:即在用戶原來(lái)的密碼字符串之前添加一個(gè)“!”
-U,--unlock:解鎖用戶的密碼
userdel命令:刪除用戶
userdel [選項(xiàng)] 登錄
-r:刪除用戶時(shí)一并刪除其家目錄
passwd命令:
passwd [-k] [-l] [-u[-f]] [-d] [-e] [-n mindays] [-x maxdays] [-wwarndays] [-i inactivedays] [-S] [--stdin] [username]
(1)passwd:修改用戶自己的密碼
(2)passwd USERNAME:修改指定用戶的密碼,但僅root有此權(quán)限
-l,-u:鎖定和解鎖用戶
-d:清除用戶密碼串
-e DATE:過(guò)期期限,日期
-i DAYS:非活動(dòng)期限
-n DAYS:密碼的最短使用期限
-x DAYS:密碼的最長(zhǎng)使用期限
-w DAYS:警告期限
--stdin:
echo "PASSWORD" | passed --stdin USERNAME
gpasswd命令:
組密碼文件:/etc/gshadow
gpasswd [選項(xiàng)]group
-a USERNAME:向組中添加用戶
-d USERNAME:從組中移除用戶
newgrp命令:臨時(shí)切換指定的組為基本組
-:會(huì)模擬用戶重新登錄以實(shí)現(xiàn)重新初始化其工作環(huán)境
chage命令:更改用戶密碼過(guò)期信息
chage [選項(xiàng)] 登錄名
-d:最近一次修改密碼時(shí)間
-E 過(guò)期期限
-W 警告期限
-m 密碼的最短使用期限
-M 密碼的最長(zhǎng)使用期限
id命令:顯示用戶的真實(shí)有效ID
id [option]...[user]
-u:僅顯示有效的UID
-g:僅顯示用戶的基本組ID
—G:僅顯示用戶所屬的所有組的ID
-n:顯示名字而非ID
su命令:swtich user
登錄式切換:會(huì)通過(guò)重新讀取用戶的配置文件來(lái)重新初始化
su -USERNAME
su -l USERNAME
非登錄式切換:不會(huì)讀取目標(biāo)用戶的配置文件進(jìn)行初始化
su USERNAME
演示: groupadd -g 5000 test
groupadd centos
useradd -u 5000 -g 5000 -G centos -c "test" -d /tmp/test -s /bin/tcsh test
test:x:5000:5000:test:/tmp/test:/bin/tcsh
usermod -u 5001 -aG gentoo -c"test1" -md /tmp/test1 -s /bin/bash test
test:x:5001:5000:test1:/tmp/test1:/bin/bash
passwd -i 2 -n 10 -x 20 -w 15 test
echo "test" | passwd --stdin test
passwd -l test
test:!!$6$.RZMgxhp$kkNJ7ORCQbCNjoeoeb/a2rh4jHXK3WVikBHfWUjdy1HMaPGTpY8Abmt/IfMhPXP79rrmdhtCTYQJtlzQgVI1v.:18027:10:20:15:2::














