linux 常见名词及命令(二)
pwd 用于显示当前的工作目录。
cd 用于切换工作路径
cd - 切换到上一次的目录
cd ~ 切换到家目录
cd ~username 切换到其他用户的家目录
cd .. 切换到上级目录
ls 用于查看目录中有哪些文件
-a 包括隐藏文件的全部文件
-d 仅看目录本身
-h 已读的文件容量大小
-l 显示文件的详细信息
cat 用于查看纯文本文件(较短的)
-n 显示行号
-b 显示行号但不包括空行
more 用于查看纯文本文件(较长的)
-数字 预先显示的行数(默认为一页)
-d x显示提示语句与报错信息
head 用于查看纯文本的前N行
-n 10 显示10行
-n -10 不显示后10行
tail 用于查看纯文本的后N行
-n 10 显示后10行
-f 持续刷新新显示的内容
od 用于对查看特殊格式的文件
-t a 默认字符
-t c ASCII字符
-t o 八进制
-t d 十进制
-t x 十六进制
-t f 浮点数
tr 用于转换文本文件中的字符
示例:
将123.txt文件的内容转换成大写:cat 123.txt | tr [a-z] [A-Z]。
wc 用于统计指定文本的行数、字数、字节数。
-l 只显示行数
-w 只显示单词数
-c 只显示字节数
cut 用于通过列来提取文本字符。
-d 分隔符 指定分隔符,默认Tab
-f 指定显示的列数
-c 单位改为字符
示例:
获取系统中所有的用户的名称,
-d表示以:来做分隔符,-f1只看第一列的内容
cut -d: -f1 /etc/passwd
diff 用于比较多个文本文件的差异。
-b 忽略空格引起的差异
-B 忽略空行引起的差异
-q或--brief 仅报告是否存在差异
-c 使用上下文输出格式
示例:diff a.txt b.txt
touch 用于创建空白文件与修改文件时间。
linux中文件的三种时间:
更改时间(mtime),内容修改时间(不包括权限)
更改权限(ctime),更改权限与属性的时间
读取时间(atime),读取文件内容的时间
-a 仅修改访问时间 atime。
-m 仅修改更改时间 mtime。
-d 同时修改atime与mtime。
-t 要修改成的时间[YYMMDDhhmm]
示例:
黑客执行touch -d "2 days ago" test,便将访问与修改时间修改为了2天前,
伪造自己没有动过该文件的假象。
mkdir 用于创建空白的文件夹。
-m=MODE 默认文件目录权限,如"-m 755"
-p 连续创建多层目录(若文件已存在则忽略)
-v 显示创建的过程
示例:
创建5个目录:mkdir -p a/b/c/d/e
cp 用于复制文件或目录
-p 保留原始文件的属性
-d 若对象为链接文件,则保留该链接文件的属性
-r 递归持续复制(用于目录)
-i 若文件存在询问是否覆盖
-a 相当于-pdr
mv 用于移动文件或改名。
示例:
将文件aaa重命名为bbb:mv aaa bbb。
rm 用于删除文件或目录
-f 忽略警告信息
-i 删除前先询问
-r 删除文件夹
rmdir 删除空目录
dd 用于指定大小的拷贝的文件或指定转换的文件。
if 输入的文件名称
of 输出的文件名称
bs 设置每个块的大小
count 设置要拷贝的块的个数
conv=ucase 将字母从小写转换为大写
conv=lcase 将字符从大写转换为小写
示例:
将光驱设备拷贝成镜像文件:
dd if=/dev/cdrom of=rhel.iso
useradd 用于创建新用户。
-d 指定用户的家目录
-D 展示默认值
-e 账号有效截止日期
-g 指定一个初始用户组
-G 指定一个或多个扩展用户组
-N 不创建与用户同名的用户组
-s 指定默认的Shell
-u 指定用户UID
id 用于查看用户的基本信息
示例:id root
passwd 用于修改用户的密码
-l 锁定用户禁止其登录
-u 解除锁定,允许登录
--stdin 允许从标准输入修改用户密码,如(echo "NewPassWord" | passwd -stdin Username)
-d 使账号无密码
-e 强制用户下次登录时修改密码
-S 显示用户的密码状态
示例:
修改当前用户的密码:passwd
修改其他用户的密码:passwd 用户名
userdel 用户删除用户。
-f 强制删除用户,家目录与其相关文件
-r 同属删除用户,家目录与其相关文件
usermod 用于修改用户的属性。
-c 填写账号的备注信息
-d-m -m与-d连用,可重新指定用户的家目录并自动旧的数据转移过去。
-e 账户到期时间,格式"YYYY-MM-DD"
-g 变更所属用户组
-G 变更扩展用户组
-L 锁定用户禁止其登录
-U 解锁用户,允许登录
-s 变更默认终端
-u 修改用户的UID
groupadd 用于创建群组
示例:
创建test群组:groupadd test