2、Linux文件系统和文本编辑器
2.1、用户和用户组管理
2.1.1、用户管理常用命令
useradd:用户账号添加指令
useradd [option] [username]
-g :用于添加用户账号时指定该用户的私有组。
-G:用于添加附属组
-D:用于显示或设置useradd命令所使用的默认值
-d:指定用户主目录,如果此目录不存在,则同时使用-m选项来创建主目录。
-m:使用的目录若不存在,则自动建立。
-u: 制定用户的用户号。
usermod:修改用户账号
usermod [option] [username]
-d :修改用户登入时的目录
-e :修改账号的有效期限,days表示天数
-g :修改用户所属的群组
-l :变更用户登录时的名称为login_name
-p :修改用户密码
-s :指定用户登录的shell,如果不设置,则选用系统预设的shell
userdel:删除用户账号命令
passwd:用户口令管理命令
passwd [option] [username]
-l :锁定用户口令,即禁止使用该用户账号。
-u:口令解锁
-f:强迫用户下次登录时修改密码。
-l [login_name]:变更用户登录时的名称为login_name
2.1.2、用户组管理常用命令
groupadd:用户组添加命令
groupadd [option] [groupname]
-g GID:除非使用-o参数,否则GID值必须是唯一且数值不可为负,预设值以/etc/login.defs为准
-o GID:运行GID不唯一
-r:加入组GID号,且其GID号低于499系统账号。
-f:新增一个已经存在的用户组账号,系统会出现错误,然后结束
groupmod:用户组修改命令
groupmod [option] [groupname]
-g GID:用户指定新的GID
-o GID:重复使用GID
-n:为群组改名
groupdel:用户组删除命令
groupdel [groupname]
2.2、文件和目录操作
2.2.1、文件操作常用命令
ls:文件清单命令
ls [option] [file or directory]
cp:文件复制命令
cp [option] [source] [destination]
-a:该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录。
-d:复制时保留链接
-f:删除已经存在的目标文件而不提示。
-i:在覆盖目标文件时给出提示,要求用户确认。
-p:除复制文件内容外,还将把其修改时间和访问权限也复制到新文件中。
-r:递归复制该目录下的所有文件。
-l:不进行复制操作,只是链接文件。
mv:文件移动命令
mv [option] [source] [destination]
-i:交互方式操作。
-f:禁止交互操作。
-p:移动时保持权限。
rm:删除文件命令
rm [option] [fileName or directoryName]
-f:忽略不存在的文件,从不给出提示
-r:递归删除
-i:进行交互式删除
2.2.2、目录操作常用命令
mkdir:创建目录命令
mkdir [option] [directoryName]
-m:对新建目录设置存取权限
-p:自动建立不存在的目录
-v:每次创建新目录都显示信息。
rmdir:删除目录命令
rmdir [option] [directoryName]
-p:递归删除空目录
cd:目录切换命令
cp [directoryName]
cd -:返回上次访问的目录
2.2.3、文件和目录权限管理
chmod:更改文件(目录)权限命令
chmod [userType] [signal] [type] [filename]
chown:更改文件(目录)属主命令
chown [option] [owner] [filename]
-c:若该文件或目录属主确实已经更改,才显示其更改动作。
-h:改变符号链接文件的属主时不影响该链接所指向的目标文件。
-f:若该文件或目录属主无法被更改也不显示错误信息。
-v:显示属主变更的详细资料
-R:以递归的方式逐个变更属主。
2.2.4、查找文件命令
find:查找文件命令
find [路径] [选项] [操作]
-name:根据文件名查找文件
-perm:根据文件权限查找文件
-prune:使用这一选项可以使find命令不在当前制定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user:根据文件属主查找文件
-group:根据文件所属的用户组查找文件。
-mtime -n +n:根据文件的更改时间查找文件,-n表示文件更改时间距今在n天之内,+n表示文件更改时间距今在n天之前
-nogroup:查找无有效属组的文件
-nouser:查找无有效属主的文件。
-newer file1 ! file2:查找更改时间比文件file1新但比文件file2旧的文件。
-type:查找某一类型的文件。
b:块设备文件
d:目录
c:字符设备文件
p:管道文件
l:符号链接文件
f:普通文件
-size n:[c]:查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-depth:在查找文件时,首先查找当前目录下文件,然后在其子目录中查找
-print:将匹配的文件输出到标准输出
-exec:对匹配的文件执行该参数后的Shell命令。相应命令的形式为'command' { } \;
-ok:和-exec的作用相同,不过给给出提示。
find . -name 't*' -perm 744 -print:查找当前目录下文件名以t开头的,且文件属主具有读、写、执行权限的文件。
find . -mtime -90 -print:查找更改时间距今90天内的文件
find /etc -type f -name "rc*" -exec ls -l { } \;:查找/etc目录下文件名以rc开头的普通文件,并对查找结果执行ls -l命令,即列出查找结果的详细文件信息。
2.3 文本编辑器
2.3.1、vim编辑器
用于移动光标的vim命令
h:将光标向左移动
j、+、Enter:将光标向下移动
k、-:将光标向右移动
l:将光标向右移动
}:将光标移动到当前段落的末尾
{:将光标移动到当前段落的开头
):将光标移动到当前句子的末尾
(:将光标移动到当前句子的开头
^:移动到当前行的第一个非空字符
$:移动到当前行末尾
:n:移动到行n
常用的vim编辑命令
x:删除光标当前位置的字符
dd:删除光标所在的整行文本
d$:删除当前光标位置到该行结束的所有文本。
dw:从当前光标位置向后删除单词
J:将下一行文本内容合并到本行行尾
A:在当前光标所在行的后面附加内容
vim编辑器的搜索和替换命令
/word:自当前光标位置向下搜索名字为word的字符串
?word:自当前光标位置向上搜索名字为word的字符串
:n1,n2s/word1/word2/g:在n1行与n2行之间搜索名字为word1的字符串,并将其替换为word2
:1,$s/word1/word2/g:在第一行和最后一行之间搜索名字为word1的字符串,并将其替换为word2