basename 基名
-取文件名
-去后缀名 --- 最后指定需要去除的完整后缀名
dirname 目录名---取一个文件存储路径,可以用dirname
-带全路径 --- 文件所在目录
-仅文件名 --- . 表示路径为当前目录
cat 简单的说,有两种:读和写。
1. cat 接普通文件名,会把文件内容打印到屏幕;
2. cat > file,这个可以向文件“file”写入内容,最后按 Ctrl + D 结束输入,会将你输入的数据保存到文件。
3. cat 不接任何东西,从标准输入接收数据
ls:列出当前目录的内容或指定目录
用法: ls [options] [ files_or_dirs ]
示例:
ls -a 包含隐藏文件
ls -l 显示额外的信息-查看文件的属性
ls -R 目录递归通过
ls -ld 目录和符号链接信息---查看目录的属性
ls -1 文件分行显示
ls –S 按从大到小排序
ls –t mtime 排序
ls –u 配合-t 选项,显示并按atime 从新到旧排序
ls –U 不排序按目录存放顺序显示
ls –X 按文件后缀排序
stat
文件:metadata, data
三个时间戳:
access time: 访问时间,atime ,读取文件内容
relatime: relay time (延迟时间)
chattr +A a 锁定文件访问时间,无法修改,其他时间可以修改
①:如果距上次atime时间超出一天以上,读取可改变
②:文件一般读多于修改,修改时间新于atime,触发atime更改
modify time: 修改时间, mtime ,改变文件内容(数据)
change time: 改变时间, ctime ,文件元数据更改
touch:创建空文件;更改文件或目录的时间属性
touch [OPTION]... FILE...
-a: 变 仅改变 atime
-m: 变 仅改变 mtime
-t :STAMP: [[CC]YY]MMDDhhmm[.ss]
-c: 如果文件不存在,则不予创建
cp:复制文件和目录
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
cp SRC DEST
SRC 是文件:
-如果目标不存在:新建DEST ,并将SRC 中内容填充至DEST中 中
-如果目标存在:
如果DEST 是文件:将SRC 中的内容覆盖至DEST中,基于安全,建议为cp 命令使用-i 选项
如果DEST 是目录:在DEST 下新建与原文件同名的文件,并将SRC中内容填充至新文件中
cp SRC... DEST 复制多个文件到目录且必须为目录
SRC... :多个文件
DEST 必须存在,且为目录,其它情形均会出错;
cp -r SRC DEST
SRC 是目录:此时使用选项:-r
如果DEST 不存在:则创建指定目录,复制SRC 目录中所有文件至DEST 中;
如果DEST 存在:
如果DEST 是文件:报错
如果DEST 是目录:在DEST下新建与原目录同名的目录,并将SRC中内容复制至新目录中
cp 常用选项
-i :交互式
-r, -R: 递归复制目录及内部的所有内容;
-a: 归档,相当于-dR --preserv=all
-d :--no-dereference --preserv=links 不复制原文件,只复制链接名
--preserv[=ATTR_LIST]
mode: 权限
ownership: 属主属组
timestamp:
links
xattr
context
all
-p: 等同--preserv=mode,ownership,timestamp
-v: --verbose
-f: --force
file:
文件可以包含多种类型的数据
检查文文件类型,然后确定适当的开放命令或应用程序使用
file [options] <filename>...
常用选项:
-b 列出文件辨识结果时,不显示文件名称
-f 列出文件中文件名的文件类型
-F 使用指定分隔符号替换输出文件名后默认的”:” 分隔符
-L 查看对应软链接对应文件的文件类型
--help 显示命令在线帮助
tr:转换和删除字符
tr [OPTION]... SET1 [SET2]
选项:
-c –C --complement :取字符集的补集
-d --delete :删除所有属于第一字符集的字符
-s --squeeze-repeats :把连续重复的字符以单独一个字符表示
-t --truncate-set1 :将第一个字符集对应字符转化为第二字符集对应的字符
[:alnum:]:字母和数字
[:alpha:]:字母
[:cntrl:]:控制(非打印字符)字符
[:digit:]:数字
[:graph:]:图形字符
[:lower:]:小写字母
[:print:]:可打印字符
[:punct:]:标点符号
[:space:]:空白字符
[:upper:]:大写字母
[:xdigit:]:十六进制字符
2. 用户、用户组
w Show who is logged on and what they are doing.
useradd username "添加用户" -G 组名 username "直接将用户加到组并创建"
userdel username "删除用户" -r username "连用户的目录也删除"
passwd username "添加密码"
passwd -l username "锁密码"
passwd -u username "解开密码"
passwd -d username "删除密码"
id username "查看用户信息"
usermod -l new_username old_username "用户改名"
usermod -G 组名 username "更改组"
usermod -L username "锁定用户"
usermod -U username "解锁用户"
groupadd 组名 "创建组"
gpassswd -a username 组名 "将用户添加到组"
groupmod -n new_group old_group "组改名"
groupdel 组名 "删除组"
gpasswd 组名 "改变组密码"
gpasswd -r 组名 "删除组密码"
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务服务
# chkconfig --list # 列出所有系统服务
# chkconfig --list | grep on # 列出所有启动的系统服务程序
# rpm -qa # 查看所有安装的软件包
whatis
显示命令的简短描述
每晚使用一个数据库更新
刚安装后不可立即使用
makewhatis 版本6 | mandb 版本7 制作数据库
yum
Yum命令格式:
yum <options> <command> <package...>
参数说明:
options: 常用的有:
-y : 如果在工作过程中如要使用者响应,这个参数可以直接回答yes
command:
list : 列出在yum server 上面有的RPM套件;若执行yum list installed则表示只列出系统中已安装的软件包,yum list available则表示只列出软件仓库中可用(尚未安装)的软件包,yum list update则表示列出可以升级版本的软件包。
install: 安装某个套件
update : 升级某个套件,如果update后面没有接套件名称,即更新目前主机所有已安装的套件.
info : 列出某个套件的详细信息,相当于rpm -qi package内容
clean : 将已下载到本机的packages或headers移除
remove : 移除已经安装在系统中的某个套件
yum update 全部更新
yum update package 更新指定程序包package
yum check-update 检查可更新的程序
yum info <package> 显示安装包信息
yum list 显示所有已经安装和可以安装的程序包
yum list <package> 显示指定程序包安装情况
yum search <keyword>查找软件包,当需要根据某个关键词来查找相关的软件包时,可以执行yum search 关键词,默认仅根据软件包名称和描述信息进行搜索。若执行yum search all 关键词,可以扩大搜索范围,例如,以下将搜索软件仓库并列出与httpd相关的软件包。Yum search all httpd
yum clean headers 清除header
yum clean packages 清除下载的rpm包
yum clean all 清除header与rpm包
yum grouplist ,列出所有组
yum groupinstall 安装某个软件组如:yum groupinstall Virtualization 安装虚拟化
文件通配符
* 匹配零个或多个字符
? 匹配任何单个字符
~ 当前用户家目录
~mage 用户mage 家目录
~+ 当前工作目录
~- 前一个工作目录
[0-9] 匹配数字范围
[a-z] :字母
[A-Z] :字母
[wang] 匹配列表中的任何的一个字符
[^wang] 匹配列表中的所有字符以外的字符
预定 义的字符类: :#man 7 glob
[:digit:] :任意数字,相当于0-9
[:lower:] :任意小写字母
[:upper:]: 任意大写字母
[:alpha:]: 任意大小写字母
[:alnum:] :任意数字 或字母
[:blank:] :水平空白字符
[:space:] :水平或垂直空白字符
[:punct:] :标点符号
[:print:] :可打印字符
[:cntrl:] :控制(非打印)字符
[:graph:] :图形字符
[:xdigit:] :十六进制字符
网友评论