首页 置换 选车 估价 问答 生活 经销商 车管所 汽车资讯 汽车销量 车牌查询 今日油价 天气预报
您的位置: 首页 > 生活 > 其他 > shell基本语法讲解(基本程序和命令)
shell基本语法讲解(基本程序和命令)
更新时间:2024-07-05 20:58:15

shell基本语法讲解?几个常用参数 -l 以长列表列出文件,我来为大家科普一下关于shell基本语法讲解?下面希望有你要的答案,我们一起来看看吧!

shell基本语法讲解(基本程序和命令)1

shell基本语法讲解

基本命令
  • ls 列出文件的基本命令

几个常用参数

-l 以长列表列出文件

-R选项, 递归选项,以目录树的形式列出所有文件

-S, 将会按照文件尺寸列出所有文件

-t, 将会按照修改时间来列出文件

-i选项会显示文件的inode

  • cat, tac 把文件的内容输出到stdout

参数 -n 所有行前边插入行号

-b 用来加行号的, 不对空行进行编号

-v 用^标记法出不可打印字符

-T 显示TAB ^I

-E 显示行尾

-A -vET

-s 把多个空行压缩成一个空行

tac 和cat 相反,从行尾打印

  • rev 反转每一行内容
  • cp 拷贝文件

参数 -a 拷贝完整目录树, -u是更新选项, -r和-R选项是递归标志

  • mv 文件移动命令 等价于cp和rm命令的组合
  • rm 删除一个或多个文件

参数 -f 强制删除文件, 即使文件是只读的

-r删除整个目录树

  • rmdir 删除目录 只有目录中没有文件才生效
  • mkdir 创建空目录

-p 创建递归目录

  • chmod修改文件属性
  • ln 创建文件链接

参数 -s 创建符号链接, 或"软"链接

  • man, info 帮助手册
复杂命令
  • find 查找文件

find [路径] [选项] [操作]

参数 -name 按文件名查找文件,例如:find /etc -name '*.conf'

-iname 按文件名查找文件,不区分大小写

-user 查找文件所属用户的所有文件

-group 查找文件所属组的所有文件

-type 按文件类型查找 f文件/d目录/c字符设备文件/b块设备文件/l链接文件p  管道文件

-size 根据文件大小查询 -n小于大小为 n 的文件 n 大于大小为 n 的文件

-mtime -n n天以内修改的文件 n n天以外修改的文件 n 正好n天修改的文件

-mmin -n n分钟以内修改过的文件 n n分钟之前修改过的文件

-mindepth n 从第 n 级目录开始搜索

-maxdepth n 表示至多搜索到第 n-1 级子目录

-newer file1 查找当前目录下比file1文件要新的文件

  • xargs 给命令传递参数的一个过滤器, 也是组合多个命令的一个工具

参数 -p 当每次执行一个分隔符的时候询问一次用户。

-n num num为个数,表示命令在执行的时候一行用的分隔符的个数,默认是用所有的。

-t 表示先打印,然后再执行。

-i 一行一行赋值给 {},默认是单行。

-r 当xargs的输入为空的时候则停止xargs,不用再去执行了。

-L num 从标准输入一次读取 num 行送给 command 命令。

-l 同 -L。

-d delim delim分隔符,这里修改的是xargs的分隔符。

当你尝试用rm 删除太多的文件,你可能得到一个错误信息,用xargs 去避免这个问题

find ~ -name ‘*.log' -print0 | xargs -0 rm -f

xargs将find 命令的输出传递给ls -l

find /etc -name "*.conf" | xargs ls –l

使用xargs 下载所有链接

cat url-list.txt | xargs wget –c

查找所有的jpg 文件,并且压缩它

find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz

拷贝所有的图片文件到一个外部的硬盘驱动

ls *.jpg | xargs -n1 -i cp {} /external-hard-drive/directory

  • expr 通用求值表达式

通过给定的操作连接参数, 并对参数求值. 可以使算术操作, 比较操作, 字符串操作或者是逻辑操作

expr 3 5 #返回8

expr 5 % 3 #返回2

expr 1 / 0 #返回错误消息, expr: division by zero 不允许非法的算术操作.

expr 5 \* 3 #返回15 在算术表达式expr中使用乘法操作时, 乘法符号必须被转义.

y=`expr $y 1` # 增加变量的值, 与let y=y 1和y=$(($y 1))的效果相同. 这是使用算术表达式的一个例子.

z=`expr substr $string $position $length` #在位置$position上提取$length长度的子串.

b=`expr match "$a" '[0-9]*'` # 统计数字的个数.

b=`expr match "$a" '\([0-9]*\)'` # 注意, 括号需要转义括号,b是匹配a的子串

:操作可以替换match命令. 比如, b=`expr $a : [0-9]*`与 b=`expr match $a [0-9]*`完全等价

时间/日期 命令
  • date

date %Y //year,输出4位数年

date %y //输出2位数的年

date %m //m表示month,输出的结果是月份

date %d //d表示day,日

date %D //D表示特殊格式的日期表示方法 如当前日期为2018年3月21日 显示21/03/18

date %Y%m%d //输出年月日

date %F //输出的年月日会用连字符隔开

date %H //H表示hour小时

date %M //M表示minute分钟

date %S //S表示second秒

date %s //输出结果是一个时间戳,表示距离1970年1月1日0时0分过去多少秒

date %T //以下面格式输出时分秒

date %H:%M:%S //效果跟上条命令一样

date %w //输出结果为星期几,比如下图表示当前系统时间是星期三

date %W //表示当前为今年的第几周,比如我这里为今年的第12周

date %s //获取时间戳

date -d @1521563928 //将时间戳换算成日期

date %s -d "2017-03-21 00:38:48" //将日期换算成时间戳

从当前时间往前或往后推算

date -d "-1day" //当前系统时间为3月21日,输出结果为3月20日

date -d "-1 month" %F //上个月

date -d "-1 year" %F //表示去年

  • zdump

时区dump: 查看特定时区的当前时间

  • time

输出统计出来的命令执行的时间.

time ls -l /

  • touch 更新文件被访问或修改的时间或创建新文件
  • at 作业控制命令, 用来在指定时间点上执行指定的命令集合

at 2:30 am Friday < at-jobs.list

  • batch 与at令的行为类似 在系统平均负载量降到.8以下时执行一次性的任务
  • cal 输出日历
  • sleep 暂停执行,单位秒
  • usleep 同sleep 单位微秒
  • hwclock, clock 访问或调整硬件时钟
,
相关推荐RECOMMEND
八月算盛夏吗
不算,是夏末。7月是盛夏。孟夏、仲夏、季夏。孟是老大,仲是老二,季是老三的古代称呼。如果按公历,大概孟夏是5月,仲夏是6月,季夏是7月。因为夏至那一天太阳最直射我们头顶,夏至总在公历6月21日或者22...
土豆花式做法
土豆花式做法有:香煎小土豆,将土豆上锅蒸熟,去皮,放入平底锅煎至两面金黄色,要放少许底油,小火慢煎。然后放入生抽、耗油、豆瓣酱和白糖,搅拌,煮开,然后收汁。最后加入香葱出锅。土豆属茄科,一年生草本植物...
吃泡面为什么不能喝雪碧泡面有哪些危害
因为雪碧之中含有大量的二氧化碳,同时方便面是油炸食品,表面有大量的小孔,小孔和含有二氧化碳的碳酸饮料在肚子接触,就会产生一个很强的吸附作用,把二氧化碳从雪碧里面加快排出来,导致肚子迅速胀气。泡面有易得...
酒精挥发属于什么变化
酒精挥发是物理变化,是酒精分子运动的结果,酒精分子本身没变化,只是酒精分子间的间隔发生了变化。液相到气相的变化,性质没有改变,仅仅是状态的改变,属于物理变化。酒精燃烧是化学变化,酒精的分子破裂为了碳、...
Airbnb的住宿体验其优缺点何在为什么
房间的位置往往不如意,评论体系,Airbnb的评论体系极度的不靠谱,Airbnb大多数的房源评论都是这么构成的:房东是大好人、房间超赞、床超舒服、设施超便利,你极少会看到有房客在评论里抱怨水龙头漏水、...
活珠子煮多久
15分钟。大火煮5分钟后再转小火煮10分钟即可。活珠子是南京的着名特产,属金陵小吃,是当鸡蛋即将孵成一个生命但是又没有完全成形,蛋里面已经有了头、翅膀、脚的痕迹,这种亦鸡亦蛋的鸡蛋孵化物叫做&ldqu...