shell常用命令&脚本编写

常用命令

  1. 想看看你的Shell是哪一种,执行命令: echo $SHELL

    在Linux中,$符号代表一个shell变量。所有的shell都用这种方式使用变量。有一些shell变量在你的系统启动
    的时候就有了默认值。例如,$SHELL;$LOGNAME是你的登录名,而$PATH变量指明了你的shell命令的搜索范围。
    echo命令的作用就是打印出你的输入。如果你的输入具有shell的特殊意义,例如shell变量,他就输出变量的值。
        
    
  2. ls -la

    这行命令的意义是输出当前目录的所有文件的文件名,l代表“long”,a代表“all”,有了l选项,你会发现,输
    出的内容比较丰富,不只包括文件 名,还有文件的访问权限,所有者,所属组等。你会发现这个命令会在屏幕上
    输出大量的信息,如果当前目录的文件比较多的话。现在就是“pipe”出场的时候了。
    ls -la | more
    ls -l a*
    这个命令会列出在当前工作目录下所有的以小写a开头的文件,比如说abc.txt,alpha.jpg等等。
    ls a?cd
    这条命令会列出所有以小写a开头隔一个未知字符以小写cd结尾的所有文件。例如adcd,axcd,但是不会列出adfdcd,
    也不会列出axcd.txt。
    
    
  3. man:如果你想了解每一个命令代表什么含义以及他的用法,你就可以使用man(意义为manual)命令,例如:

    man ls ,man输出的内容是为系统管理员和开发者编写的,如果你想了解更多命令的用法,你可以去找网络上
    的Linux命令文档,有一个非常方便的就是丹尼尔·巴雷特的Linux的袖珍指南。
        
    
  1. su和sudo

     su命令的作用是切换用户,这也被称为超级用户,因为在有些系统中su命令可以使你以系统的所有权限用户
     root登录。除非你是系统管理员,否则我绝不推荐你使用su切换到root,因为这可能给你带来很多麻烦。
     一个相对安全的多的办法是使用sudo命令,这个命令可以上你以root权限运行一个命令。这两个命令都需要
     系统密码。在大多数Linux的桌面发行版中这两个是相同的,就是你系统的第一个用户设置的密码。
    
  2. grep:grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

     例如:
     grep foo /etc/passwd
     返回在password文件中所有的含有foo的行
     grep -i “foo” /etc/passwd
     -i选项是忽略大小写,这就意味着若某一行含有FOO或FOo也会被搜索到。
     grep还支持递归搜索:
     grep -r “foo” /home/sjvn
     这条命令将会搜索/home/sjvn目录及其子目录下所有的包含“foo”的行
     grep也通常与其他命令串连起来使用,例如:
     ls -la | grep foo*
     列出当前目录下任何以foo开头的文件或目录。例如如下文件将被匹配:foo,foobar,foolish.txt等等。
    
  3. history : 显示出最近使用的全部命令

  4. ! : 返回上一次使用的命令

     如: ! ls 显示出上一次ls 命令的具体内容.选取哪一个命令后默认已经将该命令复制到剪切板,
     直接command+v就可以粘贴该命令了.
    
  5. cat + 文件名 : 列出该文件的内容

  6. mv +旧文件名 + 新文件名 : 更改文件名

  7. 切换文件目录

    cd : 根目录,即当前用户的目录
    cd . : 当前目录
    cd .. : 进入当前目录的上级目录
    
  8. ./可执行文件 : 执行当前文件

  9. ls : 列出当前用户的所有文件夹

  10. ls -F : 列出当前用户的文件夹,如是文件夹,文件名后面有/

  11. ls -lrt : 以文件修改的时间列出当前用户的文件夹

  12. tab : 补齐正在输入的文件名

  13. clear:如果你觉得你的屏幕上有太多的东西,看起来很讨厌,可以使用clear命令清空文件/目录命令

  14. cp:cp代表copy,就是复制,他可以复制一个或多个文件到指定的一个或多个目录下。

    一个通常的用法是:
    cp fred.txt ethel.txt
    把fred.txt中的内容复制到当前文件夹中名为ethel.txt中
    cp fred.txt /home/sjvn/docs/fred.txt
    把fred.txt复制到指定文件中。
    cp *.txt  /home/sjvn/docs/
    复制当前目录下所有以.txt结尾的文件到指定的目录下。
    cp -r /home/sjvn/docs/* /home/sjvn/backup
    递归的复制在/home/sjvn/docs/目录下的所有文件到指定的文件夹。
    
  15. hostname:显示你当前登录进去的计算机的名称。

  16. mv:mv(意义为move)顾名思义就是移动,可以移动指定文件到指定位置。当然这个命令有的时候还可以用来实现重命名。

    例如:
    mv fred.txt ethel.txt
    这条命令的作用你可以简单的认为是重命名fred.txt为ethel.txt。
    当然此命令还有其他用法,此处不再一一罗列,用法与cp类似,只是这条命令不再保留原文件。
    
  17. rm:rm代表remove,是删除的意思,所以我运行:

    rm fred.txt
    我将删除fred.txt。
    我强烈推荐你在执行rm命令的时候使用-i选项。这儿选项将在你执行命令的时候询问你是否要真的删除文件。就像这样:
    rm -i fred.txt
    

编写shell脚本

  1. 例如:find + <条件> 是执行命令,意思为查找文件

     $ find ./ -size +200M -exec du -h {} \;  
     //表示在当前目录下查找大于200M的文件
    
  2. 但是每一次输入这些命令,比较麻烦,如果有更多的命令需要一起执行,那将会更加麻烦,我们可以事先将我们需要执行的一系列命令放在一个文件中,这个文件就是一个脚本文件,以.sh结尾,然后编译脚本,最后执行脚本就可以得到我们想要执行一系列命令的结果,这对于我们经常用的一系列命令非常方便。

     vim findLarger200M.sh
     //创建一个脚本并打开
     find ./ -size +200M -exec du -h {} \;
     //在里面利用find写一个查找文件脚本
     chmod u+x findLarger200M.sh
     //编译脚本,生成可执行脚本文件
     ./findLarger200M.sh
     //执行,注意是 ./ + 脚本文件名
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,716评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,558评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,431评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,127评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,511评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,692评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,915评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,664评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,412评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,616评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,105评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,424评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,098评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,096评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,869评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,748评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,641评论 2 271

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 98,525评论 9 468
  • 第1章 小试牛刀 $ 是普通用户,# 表示管理员用户 root。 shebang:#!。sharp / hash ...
    巴喬書摘阅读 6,251评论 1 4
  • 每个人 都有一场最初的恋 年少时 总是 独自徘徊在 她必经的路旁 痴痴地等待 静静地跟随 默默地注视 她的一颦一笑...
    梅蕊新说阅读 190评论 0 1
  • 无月夜空中,相思泪纷纷。 林中飒风起,轻凉拂人意。 叶落伴须根,枝留风中迎。 可叹佳人睡,梦坠倾城碎
    浪者天宇阅读 242评论 0 0
  • 今天晚上收到消息,表妹家出事了,曾几何时我们是多么要好的姐妹,这些年我们联系少了,但是关于你的一切我都觉得心...
    小敏18阅读 156评论 0 1