1shell就是用户和内核进行交互操作的一种接口,
2shell可以运行的命令包括linux命令,内置命令,实用程序,用户程序,shell脚本
3shell元字符:
4.获取命令帮助:man,info.--help
5.文件类型有普通文件(-),目录(d),符号链接文件(l),字符设备文件(c),块设备文件(b),套接字(s),命名管道(p),块设备文件就是计算机外围设备文件,让用户可以操作设备的时候和操作普通文件一样。
6,常用文件和目录操作命令:
ls ,ls -al,ls -R递归列出所有子目录,-c,-t,-u根据文件的时间排序,
tree,显示文件和目录树,tree -d不显示文件,只显示目录, -L n只显示几层的目录
pwd 显示当前所在的目录
cd切换目录
mkdir创建目录
rmdir 删除空目录
touch 生成空文件或者更改现在文件的时间戳。-a更改访问时间,-m更改修改时间,
cp复制文件或目录,-d复制符号链接文件的时候更正指向地址,-f强制复制,-i复制的时候要确认,-p保留文件属性,-R,-r递归复制所有,
mv移动文件或者目录,-f强制复制,
rm删除文件或者目录,-f掠过不存在的文件,-r,-R递归删除所有子目录文件
ln,创建链接文件
symlinks,检查目录中的符号链接,并显示类型
7.文件打包类命令:
gzip, .gz文件的压缩和解压缩
-a,使用ASCII文字模式,-c压缩后输出,不改动原始文件,-d解压,-f强制压缩-l列出压缩文件的相关信息,-L显示版本和版权,-n压缩文件,不保存文件属性,-N保存文件属性-q,不显示警告,-r递归处理,-t测试压缩文件,-v,显示压缩执行过程,-V显示版本 -<压缩率>,1到9之间,默认是6
bzip2, .bz2文件压缩和解压缩
-c压缩后输出,-k保留原始文件,-s降低使用量,-d解压,-f强行,-t测试,-v显示过程,-V显示版本, -<压缩登录>1~9,压缩区块大小 --repetitive-best文件中有重复资料的时候,可提高压缩效果,--repetitive-fast,如果有重复的资料出现,则可以提高压缩速度,
tar,文件打包和解包,-f使用f-f指定的文件名或者设备名,-v显示过程,-c创建打包,-x恢复备份,-t列出tar包的文件名,-z用GNU的gzip压缩,-Z用compress压缩文件或解压,-j用bzip2压缩或者解压
8.文本处理类命令
cat,读取文本内容,-n显示行号,-b,同-n,对空行不编号,-s遇到两个以上的空行,用一个代替
more,分屏显示内容,-d显示提示,-s,遇到两个以上空行用一个代替,+num,从num行开始读取
head,显示文本头部的某些行,-n显示前n行。
tail,显示文本文件尾部的若干行-n,显示尾部n行,+n,从n行显示到尾部,-F显示跟踪不断增长的文件结尾内容(日志文件常用)
cut,纵向切割输出文本内容,
paste,纵向合并多个文本输出,-d<DELIM>分界符
sort,以行为单位对文件进行排序,-b忽略前导空格,-d只考虑空格,字母,数字,-f忽略大小写,-i,只考虑打印字符,-M排序月份,-n字符串数值排序,-r逆向排序,-u,相同的行,只输出一行,+n,指定列排序,
uniq,删除文本中相邻的重复的行并且输出,-c,加行号,-d只显示重复的行,-i忽略大小写,-u只显示出现一次的行,-s<N>各行前N个字符不比较,-w<N>各行地N个字符以后不比较
wc统计文本的行数,字符数,字数,-c统计字节数,-l统计行数,-L统计最长的一行的长度,-w统计单词数。
expand,将文件中的制表符转换为空格输出,-i不转换非空格后的制表符,-t<N>指定制表符为N的宽度,默认是8
unexpand,Expand的反义,-a,转换所有的空格字符,不仅仅是首部的--first-only只转换首部的空格,-t<N>
iconv文件编码转换,-f指定文本原本编码,-t指定要转换的编码,-c忽略无效字符,-o指定输出文件
dos2unix,将DOS格式转换为UNIX格式,-k不改变时间戳,-n,保存到新文件中。
9.信息显示命令
uname显示系统信息,-a显示全部,-s内核名称,-r内核版本,-v内核版本类型和发布时间,-m系统架构类型,等同arch,-n网络节点的主机名,-o显示操作系统
hostname,显示与主机名相关的信息,-f显示FQDN,-d显示DNS域名,等同dnsdomainname,-i显示主机对应的ip
dmesg,显示开机信息,-c显示信息以后清除ring buffer中的内容
uptime 显示开机到当前的时间
file 显示文件类型,-z探测压缩过的文件类型,-L直接显示符号链接指向文件的类型,-f指定要读取的文件名列表,-v显示版本信息
stat 从inode中提取并且显示文件状态信息或文件系统信息-f显示文件系统信息,-t简洁输出,-L跟随连接,
du统计磁盘使用量,-c显示所有项目相加后的量,-h,人性化显示,-s只分别计算命令列每个参数所占的总量,-S不包括子目录占用量,-x忽略不同文件系统上的目录,--max-depth=N,统计N层目录
df查看磁盘剩余量,-h人性化显示,-i显示inode的使用量而非块使用量,-l显示本地的文件系统,-t<fstype>显示指定的文件系统类型的用量-x<fstype>不显示指定的文件系统类型的用量
top实时显示进程任务,-c显示每个进程的完整指令,-u只显示指定用户的进程,-i忽略僵死进程,-s使用安全模式消除互动模式下的潜在威胁
free显示内存使用情况,-b,-k,-m指定单位显示,-s,持续观察,-s后是间隔时间秒数,-t显示内存总和,
w显示登录用户,-s显示短信息
date显示和设置时间,-R以RFC 2822规范输出,-u显示UTC时间,-s<STRING>设置时间和日期
cal显示日历,-m使用周一作为每周的第一天,-y显示一年的日历,-3显示上个月,当月,下月的日历,
which在$PATH下查找指定文件的位置, -a显示所有匹配的路径
whereis在特定目录中查找符合条件的文件-b只查找二进制文件,-m只查找手册文件,-s只查找源码文件,-u查找不包含指定类型的文件,
locale命令,显示本地支持的语言系统信息-a显示本地支持的语言系统,-m显示所有的语言编码系统
apropos 使用正则搜索手册页的名称和描述。