Linux - Shell常用指令
一、文件、目录操作命令
1、ls命令:显示文件和目录的信息
| ls | 以默认方式显示当前目录文件列表 |
| ls -a | 显示所有文件包括隐藏文件 |
| ls -l | 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行 |
| ls -lh | 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G) |
| ls -lt | 显示文件,按照修改时间排序 |
2、cd命令:改名目录
| cd dir | 切换到当前目录下的dir目录 |
| cd / | 切换到根目录 |
| cd .. | 切换到到上一级目录 |
| cd ../.. | 切换到上二级目录 |
| cd ~ | 切换到用户目录,比如是root用户,则切换到/root下 |
3、cp命令:copy文件
| cp source target | 将文件source复制为target |
| cp /root /source | 将/root下的文件source复制到当前目录 |
| cp –av soure_dir target_dir | 将整个目录复制,两目录完全一样 |
4、rm命令:删除文件或目录
| rm file | 删除某一个文件 |
| rm -f file | 删除时候不进行提示。可以于r参数配合使用 |
| rm -rf dir | 删除当前目录下叫dir的整个目录 |
5、mv命令:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
| mv source target | 将文件source更名为target |
6、diff:比较文件内容
| diff dir1 dir2 | 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出 |
| diff file1 file2 | 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的 |
| comm file1 file2 | 比较文件,显示两个文件不相同的内容 |
7、ln命令:建立链接。windows的快捷方式就是根据链接的原理来做的
| ln source_path target_path | 硬连接 |
| ln -s source_path target_path | 软连接 |
二、查看文件内容命令
1、cat命令:显示文件的内容,和DOS的type相同
| cat file |
2、more命令:分页显示命令
| more file |
more命令也可以通过管道符(|)与其他的命令一起使用,例如:
| ps ux|more |
| ls|more |
3、tail 命令:显示文件的最后几行
| tail -n 100 aaa.txt | 显示文件aaa.txt文件的最后100行 |
4、vi命令:编辑文件
| vi file | 编辑文件file |
vi 原基本使用及命令:
输入命令的方式为先按[ESC]键,然后输入:w(写入文件),:w!(不询问方式写入文件),:wq保存并退出,:q退出,q!不保存退出
5、touch命令:创建一个空文件
| touch aaa.txt | 创建一个空文件,文件名为aaa.txt |
三、基本系统命令
1、man命令:查看某个命令的帮助
eg:man cp

2、w命令:显示登录用户的详细信息

3、who命令:显示登录用户

4、last命令:查看最近那些用户登录系统

5、date命令:系统日期设定
| date | 显示当前日期时间 |
| date -s 20:30:30 | 设置系统时间为20:30:30 |
| date -s 2002-3-5 | 设置系统时期为2003-3-5 |
| date -s "060520 06:00:00" | 设置系统时期为2006年5月20日6点整。 |

6、clock命令:时钟设置
| clock –r | 对系统Bios中读取时间参数 |
| clock –w | 将系统时间(如由date设置的时间)写入Bios |
7、uname命令:查看系统版本
| uname -r | 显示操作系统内核的version |

8、关闭和重新启动系统命令
| reboot | 重新启动计算机 |
| shutdown -r now | 重新启动计算机,停止服务后重新启动计算机 |
| shutdown -h now | 关闭计算机,停止服务后再关闭系统 |
| halt | 关闭计算机 |
一般用shutdown -r now,在重启系统是,关闭相关服务,shutdown -h now也是如此。
9、su命令:切换用户
| su - | 切换到root用户 |
| su - zhoulj | 切换到zhoulj用户, |
注意:- ,他很关键,使用-,将使用用户的环境变量
四、监视系统状态命令
1、top命令:查看系统cpu、内存等使用情况

2、free命令:查看内存和swap分区使用情况

3、uptime:现在的时间 ,系统开机运转到现在经过的时间,连线的使用者数量,最近一分钟,五分钟和十五分钟的系统负载

4、vmstat命令:监视虚拟内存使用情况

5、ps命令:显示进程信息
| ps ux | 显示当前用户的进程 |
| ps uxwww | 显示当前用户的进程的详细信息 |
| ps aux | 显示所有用户的进程 |
| ps ef | 显示系统所有进程信息 |

6、kill命令:干掉某个进程,进程号可以通过ps命令得到
| kill -9 1001 | 将进程编号为1001的程序干掉 |
| kill all -9 apache | 将所有名字为apapche的程序杀死,kill不是万能的,对僵死的程序则无效。 |
五、磁盘操作命令
1、df命令:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

2、du命令:检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间。
3、mount命令:使用mount命令就可在Linux中挂载各种文件系统。
| 格式:mount -t 设备名 挂载点 |
4、mkswap命令:使用mkswap命令可以创建swap空间
5、fdisk命令:对磁盘进行分区
| fdisk /dev/xxx | 格式化xxx设备(xxx是指磁盘驱动器的名字,例如hdb,sdc) |
| fdisk -l | 显示磁盘的分区表 |
6、mkfs命令:格式化文件系统,可以指定文件系统的类型,如ext2、ext3、fat、ntfs等
| 格式1:mkfs.ext3 options /dev/xxx |
| 格式2:mkfs -t ext2 options /dev/xxx |
7、e2fsck命令:磁盘检测
| e2fsck /dev/hda1 | 检查/dev/hda1是否有文件系统错误,提示修复方式 |
| e2fsck -p /dev/hda1 | 检查/dev/hda1是否有错误,如果有则自动修复 |
| e2fsck -y /dev/hda1 | 检查错误,所有提问均于yes方式执行 |
| e2fsck -c /dev/hda1 | 检查磁盘是否有坏区 |
8、tune2fs命令:调整ext2/ext3文件的参数
9、dd命令:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。
跟DOS下的diskcopy命令的作用类似。
| dd if=/dev/fd0 of=floppy.img | 将软盘的内容复制成一个镜像 |
| dd if=floppy.img of=/dev/fd0 | 将一个镜像的内容复制到软盘,做驱动盘的时候经常用 |
六、用户和组相关命令
1、groupadd命令:添加组
| groupadd test1 | 添加test1组 |
| groupadd -g 1111 test2 | 添加test2组,组id为1111 |
2、useradd命令:添加用户
| useradd user1 | 添加用户user1,home为/home/user1,组为user1 |
| useradd -g test1 -m -d /home/test1 test1 | 添加用户test1,home为/home/test1,组为test1 |
| user list | 显示已登陆的用户列表 |
3、passwd命令:更改用户密码
| passwd user1 | 修改用户user1的密码 |
| passwd -d root | 将root用户的密码删除 |
4、userdel命令:删除用户
| userdel user1 | 删除user1用户 |
5、chown命令:改变文件或目录的所有者
| chown -R user1.user1 /dir | 将/dir目录下所有文件和目录,设置为user1所有,组为user1。-R递归到下面的每个文件和目录 |
| chown user1 /dir | 将/dir目录设置为user1所有 |
6、chgrp命令:改变文件或目录的所有组
| chgrp user1 /dir | 将/dir目录设置为user1所有 |
7、chmod命令:改变用户的权限
| chmod a+x file | 将file文件设置为可执行,脚本类文件一定要这样设置一个,否则得用bash file才能执行 |
| chmod 666 file | 将文件file设置为可读写 |
| chmod 750 file | 将文件file设置为,所有者为完全权限,同组可以读和执行,其他无权限 |
8、id命令:显示用户的信息,包括uid、gid等
9、finger命令:显示用的信息
七、压缩命令
1、gzip格式命令:压缩文件,gz格式的
注意:生成的文件会把源文件覆盖
| gzip -v | 压缩文件,并且显示进度 |
| -d | 解压缩 |
| gnuzip -f | 解压缩 |
2、zip格式命令:压缩和解压缩zip命令
3、bzip2根式命令:bzip2格式压缩命令,
注意:生成的文件会把源文件覆盖
4、tar命令:归档、压缩等,比较重要,会经常使用。
八、网络相关命令
1、ifconfig命令:显示修改网卡的信息
| ifconfig | 显示网络信息 |
| ifconfig eth0 | 显示eth0网络信息 |
修改网络信息:
| ifconfig eth0 192.168.1.1 netmask 255.255.255.0 | 设置网卡1的地址192.168.1.1,掩码为255.255.255.0 |
| ifconfig eth0:1 192.168.1.2 | 捆绑网卡1的第二个地址为192.168.1.2 |
| ifconfig eth0:x 192.168.1.n | 捆绑网卡1的第n个地址为192.168.1.n |
2、route命令:显示当前路由设置情况
| route | 显示当前路由设置情况,比较慢一般不用。 |
| route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 | 添加静态路由 |
| route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 | 添加静态路由 |
| route add default gw 192.168.1.1 metric1 | 设置192.168.1.1为默认的路由 |
| route del default | 将默认的路由删除 |
3、netstat命令:显示网络状态
| netstat -an | 查看网络端口信息 |
| netstat -nr | 查看路由表信息,比route快多了, |
4、启动网络的命令
| redhat族的命令: | /etc/init.d/network |
| debian命令: | /etc/init.d/networking |
5、网络排错
(1)、ping命令
(2)、traceroute命令:路由跟踪
(3)、nslookup命令:域名解析排错
九、其他命令
1、ssh命令:远程登陆到其他UNIX主机
2、scp命令:安全copy
3、telnet命令:登陆到远程主机
Linux - Shell常用指令的更多相关文章
- linux shell 常用指令
1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行. 2. ls 查看目 ...
- linux: shell常用指令归纳
1.软件安装方式: 1)源码安装: ~ wget xxxxxx ~ ./configure ~ make ~ make install 2) yum: ~ yum search : 查找软件包 ~ y ...
- (转)Linux最常用指令及快捷键 Linux学习笔记
Linux最常用指令及快捷键 Linux学习笔记 原文:http://blog.csdn.net/yanghongche/article/details/50827478 [摘自 鸟叔的私房菜]--转 ...
- 【shell 大系】Linux Shell常用技巧
在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...
- Linux Shell常用技巧(目录)
Linux Shell常用技巧(一) http://www.cnblogs.com/stephen-liu74/archive/2011/11/10/2240461.html一. 特殊文件: /dev ...
- HBase shell 常用指令
HBase shell 常用指令 连接HBase $ ./bin/hbase shell 打开帮助 hbase(main):001:0> help 创建表 hbase(main):003:0&g ...
- Linux Shell常用shell命令
Linux Shell常用shell命令 一.文件.目录操作命令 1.ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示 ...
- [转帖]Linux Shell常用技巧(五)
Linux Shell常用技巧(五) https://zhuanlan.zhihu.com/p/73451771 1. 变量:在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义.变量的类型可 ...
- [转帖]拿小本本记下的Linux Shell常用技巧(一)
拿小本本记下的Linux Shell常用技巧(一) https://zhuanlan.zhihu.com/p/73361101 一. 特殊文件: /dev/null和/dev/tty Linux系统提 ...
随机推荐
- DOM操作基本用法
本文列举了js中DOM选取的基本用法,在列表中没有id的情况下如何选取到需要的一项,代码如下: <h2>获取Jerry的js代码</h2> <ul id="fi ...
- PAT 1002. A+B for Polynomials (25) 简单模拟
1002. A+B for Polynomials (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue T ...
- saltstack_grains
1. [root@kylin1 grains]# cd /srv/salt/_grains/ [root@kylin1 _grains]# ls cpu.py [root@kylin1 _grains ...
- PHP扩展代码结构详解
PHP扩展代码结构详解: 这个是继:使用ext_skel和phpize构建php5扩展 内容 (拆分出来) Zend_API:深入_PHP_内核:http://cn2.php.net/manual/ ...
- JS 中对变量类型的五种判断方法
5种基本数据类型:undefined.null.boolean.unmber.string 复杂数据类型:object. object:array.function.date等 方法一:使用typeo ...
- 实践作业3:白盒测试----我是如何写测试用例DAY6
一开始接到写白盒测试的任务,我感觉挺难的,因为感觉之前我所想到的都是黑盒测试啊,说到测试系统逻辑,感觉就有些神秘的样子没有思路了,那黑盒和白盒写的到底有啥区别.后来我请教了实验室的一个同学,他虽然还没 ...
- es6+require混合开发,兼容es6 module,import,export
近一年,一直很忙,做了不少的项目,不过都不是太满意,毕竟是别人的作品,不好意思写出来.最近打算开发一个es6的项目,项目中用到require,本文主要讲解es6的module规范怎么与require的 ...
- Python 项目实践一(外星人入侵)第二篇
接着上次的继续学习. 一 创建一个设置类 每次给游戏添加新功能时,通常也将引入一些新设置.下面来编写一个名为settings的模块,其中包含一个名为Settings的类,用于将所有设置存储在一个地方, ...
- node.js之路由,中间件,ge请求和post请求的参数
一.路由 1.什么是路由 服务器需要根据不同的URL或请求来执行不一样的操作,我们可以通过路由来实现这个步骤 2.实现路由的方法 2.1.get请求访问网址时,做什么事 1 app.get(" ...
- Java并发编程有多难?这几个核心技术你掌握了吗?
本文主要内容索引 1.Java线程 2.线程模型 3.Java线程池 4.Future(各种Future) 5.Fork/Join框架 6.volatile 7.CAS(原子操作) 8.AQS(并发同 ...