Bash命令

一:man命令,是manual 手册的意思,如man ps表示查看ps命令的手册,man man查看man命令的手册;也可以通过man xx查看是否有xx命令。

二:cat命令,用来一次性显示所有的文本信息,一般和管道符一起用,如rpm -qa|cat -n,-n表示同时显示行号

三:more命令,用来分页显示文本信息,适用于那些很多内容的,如rpm -qa|more -3,-3表示一页为3行,如果没有则一页占

一屏;其中按下空格键翻页,按enter键进一行;网上说的向上翻页个人试了没用,也没看到可以显示行号;按q或Ctrl+C退出。

可以通过rpm -qa|cat -n|more来间接实现more显示行号。

四:history命令,用来显示以往用过的命令,在bash里还可以通过!3来再次执行第三个历史命令;通过history -c清除历史命令。

五:reboot命令,重启电脑

六:ping命令,似乎跟windows一样

七:ifconfig命令,类似windows的ipconfig,如果不知道哪个网卡是活动的,可以看RX和TX值,越高说明是用的多的,即当前网卡。

八:wget命令,通过web请求下载网络资源,不过这个是要先知道资源的url,而如果已经知道url其实可以复制到浏览器上执行下载任务,

不过它很灵活,可以递归下载,指定下载目录(-P选项),过滤某些下载和设置下载速率等等。wget可以下载时指定断点续传和指定下载路径及更名:wget -c URL -O ~/音乐/mm.mp3;指定下载目录为音乐,更名为mm.mp3;

九:mv命令,即move,用于剪切文件同时还可以更名,注意对于路径的匹配是可以用通配符的,如mv jdk* ~/Downloads/jdk8x64.rpm;则将当前

目录下符合jdk*的二进制文件移动到~/Downloads目录下并更名为jdk8x64.rpm;(这个适合匹配单个文件,如果是多个文件则第二个target参数只能是目录)

十:cp命令,即copy,复制文件同时还可以更名,如cp test.txt /usr/local/target/aa.txt

十一:rm命令,remove,删除文件(注意linux里所有的都是文件,如果该文件是个目录文件可以通过 -r指定为 递归删除),如rm test.txt

十二:egrep命令,grep的升级版(等同于grep -E,是扩展正则,E可以在其它选项前或后如-Ei或-iE都可以),可以用正则表达式;妥妥的神器,之前一直想找本机有没有安装jdk然后用rpm -qa|more找的要死,

后来用rpm -qa|egrep -i "^.*(?:java|jdk|jre).*$"一下子就找出来了,注意这里用了管道符,如果是从文件里找则后面再跟文件路径。

十三:cd命令,change directory,跟windows一样,..上级.当前目录,对于.开头的文件表示是隐藏文件~表示是当前用户的家目录(user.home)

十四:find命令,这个和grep不一样的是这个是用来找文件的,而且可以使用通配符,如*代表任意字符串;一般用于查看某目录是否有某些文件;如

find /etc -name "host*";表示查找/etc目录下名字是匹配host*的文件并显示,路径如果不写则是当前工作目录,而且注意这个查找默认是递归查找,即会找出目录

也会继续从子目录里找。

十五:ls命令,似乎可以理解为list,显示目录下的所有文件(包括目录),不包括隐藏文件,如果要同时显示隐藏文件要ls -a

十六:touch命令,用来创建空白文件的,如touch test.txt表示在当前目录下创建空白test.txt,文件名也可以用绝对路径或其它相对路径在其他目录里创建文件。

最简单的就是touch test.txt,在当前工作目录创建test.txt文件。

十七:mkdir命令,make directory;如mkdir a表示在当前工作目录创建名为a的目录,目录名还可以是绝对路径;如果要递归创建多级目录必须用mkdir -p a/b/c这种格式。

十八:shutdown和poweroff,两个似乎都可以用来关机,前面的如果要立刻关机要shutdown now,后面的直接poweroff即可。

十九:file,用来查看文件的属性信息,如file /usr/bin/firefox;会看到显示此文件信息为可执行文件

二十:su,是switch user的意思,如su - silentdoer表示要切换用户到silentdoer,注意中间的-表示完全切换(如环境变量也换成silentdoer的)

二十一:sudo,可以理解为super do,即超级管理员来做后面的操作,如sudo remove test.txt

二十二:rpm -qa,表示搜索全部已安装的rpm包,对于yum则是yum list installed,但是只能显示是通过yum安装的。

二十三:yum search xx,搜索yum仓库中带有xx的包信息(:前面的字符串),然后可以通过yum info 全名 查看这个包的具体信息;最后可以通过

yum -y install 全名 安装这个包(加-y表示安装过程中的提示都选yes)(也可以直接下载rpm包然后用rpm命令或图形界面双击安装)。

二十四:tar命令,重要;一般压缩文件或目录用:tar -czvf xx.tar.gz 源文件,这里c表示压缩和x相对,z表示用gzip压缩或解压,v显示压缩或解压进度,f表示要提供目标文件名且要在参数最后;

解压一般用:tar -xzvf xx.tar.gz -C 解压目录;这里-C不指定则解压到工作目录,这里-C可以换成-O实现解压到其它目录的同时更名(需要>符号,如tar -xzvf xx.tar.gz -O > /tmp/newFolderName(似乎只适用于文件而不能是文件夹,如果是文件则>可以省略)。

二十五:netstat命令,可以用来查看系统里的端口占用情况,最常用的如:netstat -anlp | grep 8080可以显示8080端口被哪个进程监听(tcp),a为all,n为numberic,l为listening,p为program(pid)

Bash的编辑快捷键:

一:在bash里复制粘贴可以右键bash看到这两个选项;等同于通过Ctrl+Shift+C复制,Ctrl+Shift+V粘贴

(Ctrl+Y也可以粘贴,这两个不一样,一个数据来自linux的复制缓存,一个是bash的复制缓存,还有个Shift+Insert,但是这三个粘贴命令的数据来源似乎都不同)。

home键光标回到命令行首,end键光标去命令行尾。

Ctrl+左右键可以让光标跳一定字符数而快速左右移动。

Ctrl+C可以跳出本次命令编辑,也可以中断正在执行的命令。

Ctrl+L清屏。

Ctrl + U: 简介光标位置到行首的内容(包括自身),以后可用Ctrl+Y粘贴

Ctrl + K: 剪切光标位置到行尾的内容(包括自身),以后可以用Ctrl + Y粘贴

Ctrl + W: 剪切从光标位置到当前单词的起始位置,以后可以用Ctrl + Y粘贴

Alt + D: 剪切从光标位置到当前单词末尾位置,以后可以用Ctrl + Y粘贴

输入exit可以关闭当前管道的Terminal。

!!:执行上一条命令,所以快速sudo的方法是sudo !!(特别适用那些执行操作后发现没有权限,然后再次sudo !!)

还有一些可以参考:https://www.cnblogs.com/wangtao1993/p/6060888.html

其它

1.在桌面右键打开的Terminal的工作目录是~,而到具体目录右键打开的Terminal工作目录则是当前目录。

2.Ctrl+Alt+F2进入全屏的bash界面;Ctrl+Alt+F1退出全屏bash界面。

3.按下Win+H隐藏当前窗口(win键在linux里叫Super键)

4.按下Win+Tab可以动态选择要活动的窗口/程序。

5.可以在设置面板通过对Keyboard的Hide all normal windows设置为Win+D实现windows一样的功能,即隐藏当前所有窗口和显示win+D而隐藏的窗口。

6.在Keyboard里设置Super+L;Super+R;Super+E

参数英语对照

1:-r有递归的意思,recursive,可以用来删除目录及子目录;

2:-f有强制的意思,force,比如强制删除不提示;

3:-i有安装的意思,install

4:-a有全部的意思,all

5:-q有查询的意思,query;还有access

6:-l有location的意思,如rpm -ql 包名可以查询出安装的rpm包在哪。

7:-v重要选项,用来显示执行执行的情况,否则都不知道自己的指令是否执行完或进度如何;(应该是verbose的意思,即冗余的,也就是说要尽可能多的输出)

8:-h用来格式化结果(包括一些值的转换如byte转成显示多少G什么的)

希望有但没看到的功能

1.只通过键盘选中bash中的内容

2.撤销上次更改,比如bash里粘贴了两次,想撤销上一次粘贴内容。

Linux Bash命令总结的更多相关文章

  1. 转: windows 10使用原生linux bash命令行

    转: https://www.zybuluo.com/pandait/note/337430 windows 10使用原生linux bash命令行 linux bash windows-10 第一时 ...

  2. Linux Bash命令关于程序调试详解

    转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使 ...

  3. win10开启 linux Bash命令(win10内置了linux系统支持)

    win10开启 Ubuntu linux Bash命令(win10内置了linux系统支持) 第一步: 先在设置→更新和安全→针对开发人员中选择"开发人员模式",点击后会下载&qu ...

  4. Win10系统开启Linux Bash命令行

    Win10系统开启Linux Bash命令行 导读 在Build2016上微软为了拉拢开发者发了个大招,那就是Win10一周年更新集成原生Linux Bash命令行功能,这将允许开发者或用户在Wind ...

  5. 【转】Linux(BASH)命令搜索机制

    原文网址:http://www.mike.org.cn/articles/linux-linux-bash-command-search-mechanism/ 转自:Eric Cheung: Linu ...

  6. 在Windows中运行Linux bash命令的几种方法

    如果你正在课程中正在学习 shell 脚本,那么需要使用 Linux 命令来练习命令和脚本. 你的学校实验室可能安装了 Linux,但是你自己没有安装了 Linux 的笔记本电脑,而是像其他人一样的 ...

  7. Linux Bash命令杂记(tr col join paste expand)

    Linux Bash命令杂记(tr col join paste expand) tr命令 tr命令可以将输入的数据中的某些字符做替换或者是作删除 tr [-ds] STR d: 删除输入数据的中的S ...

  8. Linux Bash命令杂记(cut sort uniq wc tee)

    Linux Bash命令杂记(cut sort uniq wc tee) 数据流重定向 标准输入(stdin):代码为0,使用<或<<: 标准输出(stdout):代码为1,使用&g ...

  9. Python调用Linux bash命令

    import subprocess as sup  # 以下注释很多(为了自己以后不忘), 如果只是想在python中执行Linux命令, 看前5行就够了 # 3.5版本之后官方推荐使用sup.run ...

随机推荐

  1. 双机\RAC\Dataguard的区别

    Oracle 双机/RAC/Dataguard的区别 Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统 ...

  2. scala 建模

    // train multinomial logistic regression val lr = new LogisticRegressionWithLBFGS() .setIntercept(tr ...

  3. Java可重入锁与不可重入锁

    可重入锁,指的是以线程为单位,当一个线程获取对象锁之后,这个线程可以再次获取本对象上的锁,而其他的线程是不可以的. synchronized 和   ReentrantLock 都是可重入锁. 可重入 ...

  4. Ansible Playbook 循环

    Standard Loops 为了节省一些打字,重复的任务可以写成如下: - name: add several users user: name: "{{ item }}" st ...

  5. ORDER BY 子句在视 图、内联函数、派生表、子查询和公用表表达式中无效

    SQL语句: select * from (select distinct t2.issue,cashmoney from (select distinct issue from lot_gamepa ...

  6. 表单input中disabled提交后得不到值的解决办

    input 按钮的disabled属性,如果设置了,form表单提交后,后台接收不到input的value input的字段当为diabled时时无法获取数值得,所以最近不要用这个,我们可以用read ...

  7. clipboard.js复制文字

    A-固定内容: <script type="text/javascript" src="script/clipboard.min.js"></ ...

  8. dfs小练 【dfs】

    1.前n个自然数的所有排列: #include <iostream> #include <cstdio> #include <cstring> using name ...

  9. Neuron network

    关于神经网络你不能不知道的一切 作者|Kailash Ahirwar 编译|Sambodhi 编辑|Vincent AI前线导语:理解什么是人工智能,以及机器学习和深度学习是如何影响人工智能的,这是一 ...

  10. google thumbnailator

    Thumbnailator 是一个优秀的图片处理的Google开源Java类库.处理效果远比Java API的好. 从API提供现有的图像文件和图像对象的类中简化了处理过程,两三行代码就能够从现有图片 ...