Shell常用的指令

这篇具有很好参考价值的文章主要介绍了Shell常用的指令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Shell 常用的指令

常用的指令

重定向输入输出 : > < --stdin

  • 输入: >
[root@myserver ~]# echo "123456" >a.txt 
[root@myserver ~]# cat a.txt 
123456

  • 输出: <
 cat < /etc/passwd > a.txt 

  • –stdin

    echo "12345678" |  passwd  --stdin root
    

>> 表示追加 , >表示覆盖内容

[root@myserver ~]# echo 123 > a.txt
[root@myserver ~]# cat a.txt 
123
[root@myserver ~]# echo 123 >> a.txt
[root@myserver ~]# cat a.txt 
123
123
[root@myserver ~]# echo 123 >> a.txt
[root@myserver ~]# cat a.txt 
123
123
123
[root@myserver ~]# 


管道: |

将前面命令的执行结果,作为后面命令的输入。

[root@myserver ~]# cat a.txt  | grep 12
123
[root@myserver ~]# ifconfig | grep "ens33"

逻辑与 : &&

连接命令, 当前前面的命令执行完成后继续执行后面的指令,如果前面的命令执行失败,则后面的命令不执行。

[root@myserver ~]# ls && ls -l 
[root@myserver ~]# aa && ls 
bash: aa: command not found...

逻辑或 : ||

连接命令, 当前前面的命令执行完成后不执行后面的指令,如果前面的命令执行失败,则后面的命令执行。

[root@myserver ~]# ls || ls -l
a                Desktop               mytestfile         shellscripts
anaconda-ks.cfg  Documents             mytestfile.tar.gz  Templates
a.txt            Downloads             mytest.txt         test
b.txt            initial-setup-ks.cfg  Pictures           Videos
c.txt            Music                 Public             zlib-1.2.11.tar.gz
[root@myserver ~]# aa || ls 
bash: aa: command not found...
a                Desktop               mytestfile         shellscripts
anaconda-ks.cfg  Documents             mytestfile.tar.gz  Templates
a.txt            Downloads             mytest.txt         test
b.txt            initial-setup-ks.cfg  Pictures           Videos
c.txt            Music                 Public             zlib-1.2.11.tar.gz
[root@myserver ~]# 

条件判断: [ ]

  • -d 检测目录
  • -f 检测文件
[root@myserver ~]# [ -d /root ]  &&  echo "have "
have 
[root@myserver ~]# [ -d /opt/zz ] || mkdir /opt/zz
[root@myserver ~]# ls /opt/
a.txt  b.txt  c.txt  zz

[root@myserver ~]# [ -f d.txt ] || echo 123 >d.txt && ls 
a                Documents             mytestfile.tar.gz  test
anaconda-ks.cfg  Downloads             mytest.txt         Videos
a.txt            d.txt                 Pictures           zlib-1.2.11.tar.gz
b.txt            initial-setup-ks.cfg  Public
c.txt            Music                 shellscripts
Desktop          mytestfile            Templates
[root@myserver ~]# cat d.txt 
123

文本过滤:grep、 egrep

[root@myserver ~]# grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@myserver ~]# 

[root@myserver ~]# grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@myserver ~]# grep xiaoa /etc/passwd
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
[root@myserver ~]# 


[root@myserver ~]# egrep "(root|xiaoa)" /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash

文本处理

  • 空格
  • 注释
[root@myserver ~]# cat d.txt 
123


#####
# 1
# 2
# 3


ssss



ssss
[root@myserver ~]# grep -v "^#" d.txt 
123



ssss



ssss
[root@myserver ~]# grep -v "^#" d.txt | grep -v "^$" 
123
ssss
ssss

[root@myserver ~]# egrep -v "(^#|^$)" d.txt 
123
ssss
ssss

文件查找: find

[root@myserver ~]# find /root -name "*.txt"
/root/.cache/tracker/db-version.txt
/root/.cache/tracker/db-locale.txt
/root/.cache/tracker/parser-version.txt
/root/.cache/tracker/locale-for-miner-apps.txt
/root/.cache/tracker/last-crawl.txt
/root/.cache/tracker/first-index.txt
/root/Desktop/b.txt
/root/mytest.txt
/root/d.txt
/root/.mozilla/firefox/53suypww.default-default/pkcs11.txt
/root/.mozilla/firefox/53suypww.default-default/SiteSecurityServiceState.txt
/root/.mozilla/firefox/53suypww.default-default/SecurityPreloadState.txt
/root/.mozilla/firefox/53suypww.default-default/TRRBlacklist.txt
/root/.mozilla/firefox/53suypww.default-default/AlternateServices.txt
/root/a.txt
/root/b.txt
/root/a/b/a.txt
/root/a/b/b.txt
/root/c.txt


查找当前用户主目录下的所有文件:

[root@linuxcool ~]# find $HOME -print

列出当前目录及子目录下所有文件和文件夹:

[root@linuxcool ~]# find .

在/home目录下查找以.txt结尾的文件名:

[root@linuxcool ~]# find /home -name "*.txt"

在/var/log目录下忽略大小写查找以.log结尾的文件名:

[root@linuxcool ~]# find /var/log -iname "*.log"

搜索超过七天内被访问过的所有文件:

[root@linuxcool ~]# find . -type f -atime +7

搜索访问时间超过10分钟的所有文件:

[root@linuxcool ~]# find . -type f -amin +10

找出/home下不是以.txt结尾的文件:文章来源地址https://www.toymoban.com/news/detail-477146.html

[root@linuxcool ~]# find /home ! -name "*.txt"

到了这里,关于Shell常用的指令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • adb shell settings高级指令设置系统属性所有的指令汇总+注释

    adb  shell  settings高级指令设置系统属性所有的指令汇总 目录 系统设置(system) 安全设置(secure) 全局设置(global) 删除设置 帮助 示例应用 屏幕超时时间 自动旋转屏幕 通知光 触觉反馈 动画缩放 定位服务 WiFi睡眠策略 安装非市场应用 NTP服务器 显示密度(DPI) 字体大小

    2024年02月04日
    浏览(41)
  • c程序-popen调用shell指令

    一、popen和pclose函数介绍 文章 Linux 笔记--system 函数执行shell指令 ,介绍了 system 函数执行shell 指令。但是 system 函数 只能获取到shell命令的返回值,而不能获取shell命令的输出结果。 这篇文章将介绍 popen 和 pclose 函数, 通过调用 popen 函数来调用 shell 指令,可以获取shell命令

    2024年02月04日
    浏览(39)
  • 深入篇【Linux】学习必备:Shell命令运行原理 + 基本指令

    Linux严格意义上来说是一个操作系统,我们称为\\\"核心\\\",但我们一般用户,是不能直接使用这个\\\"核心\\\"。而是通过\\\"核心\\\"的外壳程序,也就是所谓的Shell来与\\\"核心\\\"沟通。 其实我们所有的指令都要在OS内部运行,但是OS使用的难道太高,我们用户很难直接与OS打交道。 从技术角度

    2024年02月07日
    浏览(86)
  • iOS快捷指令:执行Python脚本(利用iSH Shell)

    iOS快捷指令所能做的操作极为有限。假如快捷指令能运行Python程序,那么可操作空间就瞬间变大了。iSH是一款免费的iOS软件,它模拟了一个类似Linux的命令行解释器。我们将在iSH中运行Python程序,然后在快捷指令中获取Python程序的输出。 我们用一个“获取当前日期”的Python程

    2024年01月20日
    浏览(50)
  • 10.1.5 查询指令是否为 Bash shell 的内置命令: type

    通过 type 这个指令我们可以知道每个指令是否为 bash 的内置指令。 此外,由于利用 type 搜寻后面的名称时,如果后面接的名称并不能以可执行文件的状态被找到, 那么该名称是不会被显示出来的。也就是说, type 主要在找出“可执行文件”而不是一般文件文件名。 10.1.6 指令

    2024年02月15日
    浏览(49)
  • 【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)

    在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地

    2024年01月16日
    浏览(59)
  • git常用的指令-----(工作中常用)

    git clone \\\'url\\\'      #克隆远程版本库 git init      #初始化本地版本库 git status        #查看状态  git diff                  #查看变更内容 git add .         #跟踪所有的改动文件 git add  file       #跟踪指定的改动文件 git mv old new         #文件改名 git rm fil

    2024年02月12日
    浏览(40)
  • HBase常用Shell命令

    在使用具体的Shell命令操作HBase数据之前,需要首先启动Hadoop,然后再启动HBase,并且启动HBase Shell,进入Shell命令提示符状态,具体命令如下: 1.在HBase中创建表 假设这里要创建一个表student,该表包含Sname、Ssex、Sage、Sdept、course等字段。需要注意的是,在关系型数据库(比如

    2023年04月09日
    浏览(43)
  • shell 常用命令3

    用来自动编辑文件,可以用来实现替换配置文件的配置 参数说明 : -escript或--expression=script 以选项中指定的script来处理输入的文本文件。 -fscript文件或--file=script文件 以选项中指定的script文件来处理输入的文本文件。 -h或--help 显示帮助。 -n或--quiet或--silent 仅显示script处理后

    2024年02月06日
    浏览(32)
  • 常用的shell命令

    1、ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行 ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G) ls -lt 显示文件,按

    2024年02月06日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包