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系统提 ...
随机推荐
- iOS APP上架被拒重新提交审核教程
iOS APP审核比较严格,难免会出现被拒绝的情况,需要根据苹果反馈的问题修改后重新打包上传审核! 1.登录itunesconnect.https://itunesconnect.apple.com进 ...
- openstack windows 2008镜像 制作
openstack windows 2008镜像 制作 openstack centos6 centos7 kvm 镜像制作 http://www.cnblogs.com/elvi/p/7922421 ...
- 微信小程序爬坑日记
新公司上手小程序.30天,从入门到现在,还没放弃... 虽然小程序发布出来快一年了,爬坑的兄弟们大多把坑都踩平了.而我一直停留在"Hello World"的学习阶段.一来没项目,只 ...
- Python中的选择排序
选择排序 选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理如下.首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大 ...
- Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇——纯前端多页面)
Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇--纯前端多页面) @(HTML/JS) 一般来说,使用vue做成单页应用比较好,但特殊情况下,需要使用多页面也有另外 ...
- eclipse和myeclipse中将项目发布到tomcat的root目录
1.在eclipse中,将项目直接部署在tomcat的root目录中,这样便可以直接ip:port访问项目: 项目右键->属性->web project settings 添加之后直接启动 ...
- thinkphp5.0 微信公众号接入支付宝支付
---恢复内容开始--- 真是无力吐槽这个需求了,想骂客户,好端端的非要在微信公众号接入支付宝,都知道微信公众号是拒绝支付宝的,屏蔽了支付宝,所以在微信公众号接入支付宝的话就必须手动复制链接跳出微信内 ...
- Linux中如何恢复rm命令误删除的文件之extundelete编译安装及使用
1.下载extundelete包,安装依赖 我用的是Centos系统,在安装extundelete之前需要安装e2fsprogs,e2fsprogs-libs,e2fsprogs-devel. yum ...
- 从开源项目看 Python 单元测试
我觉得以前在我开发程序的时候,除了文档,可能单元测试是另外一个让我希望别人都写,但是自己又一点都不想写的东西.但是,随着开发程序的增多,以及自己对 Bug 的修改的增多,我发现,UT 在很大程度上是对 ...
- 学习图像算法阶段性总结 (附一键修图Demo)
今天特别感慨.自己从决定研究图像处理.势必要做出一键修图算法. 经历了,三个多月的书籍积累,三个多月的算法调整以及优化. 人是一种奇怪的动物.当你做不到的时候,你以为做到了.自己会感觉非常爽,非常有成 ...