linux系统的常用命令

ll  ./test/    //查看当前目录下的test目录下的所有文件

重定向和追加

#ls -l/root > /tmp/file1.txt   //先清空文件内容,后写入新的内容

#ls -l/root >> /tmp/file.txt  //追加新内容,旧的内容不会清除

(1)命令ls——列出文件

  ls -la 给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏”文件

  ls a* 列出当前目录下以字母a开头的所有文件

  ls -l *.doc 给出当前目录下以.doc结尾的所有文件

(2)命令cp——复制文件

  cp afile afile.bak 把文件复制为新文件afile.bak

cp afile /home/bible/ 把文件afile从当前目录复制到/home/bible/目录下

cp  -r  ./test1/   /test   //将test1目录复制到test目录

  cp * /tmp 把当前目录下的所有未隐藏文件复制到/tmp/目录下

  cp -a docs docs.bak 递归性地把当前目录下的docs目录复制为新目录docs.bak,保持文件属性,并复制所有的文件,包括以句点开头的隐藏文件。为了方便起见,-a选项包含-R选项

  cp -i 在覆盖前询问用户

  cp -v 告诉用户正在做什么

(3)命令mv——移动和重命名文件

  Mv  aflie  bfile 将afile重命名为bfile

  mv afile /tmp 把当前目录下的afile移动到/tmp/目录下

(4)命令rm——删除文件和目录

  rm afile 删除文件afile

  rm * 删除当前目录下的所有文件(未隐藏文件)。rm命令不删除目录,除非也指定了-r(递归)参数。

  rm -rf domed 删除domed目录以及它所包含的所有内容(不可恢复)

rm -i a* 删除当前目录下所有以字母a开头的文件,并且在每次删除时,提示用户进行确认

rm -r  //删除目录

rm -f  //强制删除

(5)命令cd——更改目录

  cd ~ 切换到主目录

  cd /tmp 切换到目录/tmp

  cd dir 切换到当前目录下的dir目录

  cd / 切换到根目录

  cd .. 切换到到上一级目录

  cd ../.. 切换到上二级目录

  cd ~ 切换到用户目录,比如是root用户,则切换到/root下

(6)命令mkdir——建立目录

mkdir phots 在当前目录中建立名为photos的目录

mkdir -p this/that/theother 在当前目录下建立指定的嵌套子目录

touch  /tmp/test01/file.txt  //创建空文件

vi  file.log       //创建空文件并进入编辑模式

echo>file.txt      //创建file.txt并输入空到改文件中

echo  ‘12345’ >>./file  //将12345输入到文件file中

echo ‘12213’>>/home/file

(7)命令mkdir——删除目录

  mkdir 将删除空目录

(8)命令more、less——查看文件内容

  more /etc/passwd 查看/etc/passwd的内容

  功能:分页显示命令

    more file

    more命令也可以通过管道符(|)与其他的命令一起使用,例如:

    ps ux|more

    ls|more

    less /etc/passwd 查看/etc/passwd的内容

(9)命令grep——搜索文件内容

  grep bible /etc/exports 在文件exports中查找包含bible的所有行

  tail -100 /var/log/apache/access.log|grep 404 在WEB服务器日志文件access.log的后100行中查找包含“404”的行

  tail -100 /var/log/apache/access.log|grep -v googlebot 在WEB服务器日志文件access.log的后100行中,查找没有被google访问的行

  grep -v ^# /etc/apache2/httpd.conf 在主apache配置文件中,查找所有非注释行

(10)命令find——查找文件

  find . -name *.rpm 在当前目录中查找rpm包

  find . |grep page 在当前目录及其子目录中查找文件名包含page的文件

  locate traceroute 在系统的任何地方查找文件名包含traceroute的文件

       find  ./ -name "*.tcl"|xargs grep -i "aimdot_liw_mod_user_mm"在当前目录(含子目录)下查找含有“aimdot_liw_mod_user_mm”,并且以“.tcl”结尾的文件。

(11)命令vi——编辑文件

  vi /etc/bubby.txt 用vi编辑文件/etc/bubby.txt

vim /etc/bubby.txt 用vi编辑文件/etc/bubby.txt

按i进入编辑模式,

先按esc退出编辑,之后:w  //保存 :q   //退出  :wq  //保存退出

:q! //强制退出

  快捷操作:

  切换窗口:alt+1,alt+2

  全屏:alt+回车

  将vim挂起(暂停):ctrl+z,暂停后可进行其他shell操作,完了之后可通过 fg 命令切换回vim界面继续编辑

  :MR:查看历史文件记录(注意:MR大写)

  :sp 横向切换界面窗口   :vsp 纵向切换界面窗口   方便多文件对照编码(如下图:)

  emacs /etc/bubby.txt 用emacs编辑文件/etc/bubby.txt

(12)命令rz、sz——文件上传下载

  运行命令Sudo rz,即是接收文件,xshell就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到linux里的当前目录 。

  运行命令Sudo sz file 就是发文件到windows上(保存的目录是可以配置) 比ftp命令方便多了,而且服务器不用再开FTP服务了。

(13)命令cat——显示文件内容

cat file

cat -n  /etc/password       //查看内容时显示行号

(14)命令ps——查看进程

  ps [options]

  DESCRIPTION(描述):ps命令显示运行程序选项的一些信息。如果你想显示选项的一些重复信息,请使用top命令替代。

  用标准语法查看系统上的每一个进程。

     ps -e

     ps -ef

     ps -eF

     ps -ely

(15)命令kill——杀掉进程

  [root@linux ~]# kill -signal %jobnumber

  [root@linux ~]# kill -l

  参数:

  -l  :这个是 L 的小写,列出目前 kill 能够使用的讯号 (signal) 有哪些?共有62个信号。

  signal :代表给予后面接的那个工作什么样的指示啰!用 man 7 signal 可知:

  -1 :重新读取一次参数的设定档 (类似 reload);

  -2 :代表与由键盘输入 [ctrl]-c 同样的动作;

  -9 :立刻强制删除一个工作;

  -15:以正常的程序方式终止一项工作。与 -9 是不一样的。

   范例一:找出目前的 bash 环境下的背景工作,并将该工作删除。

  [root@linux ~]# jobs

  [1]+  Stopped                 vim bashrc

  [root@linux ~]# kill -9 %1

  [1]+  已砍掉                  vim bashrc

(16)命令stop、start——重启tomcat

  ./catalina.sh stop      ./catalina.sh start

(17)命令top——查看cpu、内存

(18)命令pwd——查看当前路径

(19)命令tar——打包、解包rar

  tar -cvf **.tar a.jsp b.java      将a和b打成**.rar

tar -xvf **.tar a.jsp b.java      将**.tar 解包

 -z  压缩

 -c 打包

 -x 解压

-v版本信息

 -f 必须的

-C解压至指定目录

case:  tar -zcvf   ./test.tar  ./test/   //将test打包成test.tar

    tar -zxvf  /root/Desktop/test.tar  //解压缩

tar -zxvf  ./test.tar -C  /root/Desktop/     //将test.tar 解压至桌面

(20)命令tail——查看文件详细信息

  tail -f  aaa.txt          看aaa.txt文件的详细信息(默认后10行)

  tail -x  aaa.log           x:最后几行

(21)命令head——查看文件的名字和后缀

  head -x aaa.log           x:开始几行aaa.log:要查看的文件的名字和后缀

(22)命令diff——比较文件内容 

  diff dir1 dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出

  diff file1 file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的

  comm file1 file2 比较文件,显示两个文件不相同的内容

(23)命令ln——建立连接 

  ln source_path target_path 硬连接

   ln -s source_path target_path 软连接

(24)命令touch——创建一个空文件

  touch aaa.txt  创建一个空文件,文件名为aaa.txt

  三、基本系统命令

(25)命令man——查看某个命令的帮助

   man ls 显示ls命令的帮助内容

(26)命令w——显示登录用户的详细信息

  Sarge:~# w

(27)命令who——显示登录用户

  Sarge:~# who

(28)命令last——查看最近那些用户登录系统

  Sarge:~# last

(29)命令date——系统日期设定

  date -s “060520 06:00:00″ 设置系统时期为2006年5月20日6点整。

(30)命令clock——时钟设置

  clock –r 对系统Bios中读取时间参数

  clock –w 将系统时间(如由date设置的时间)写入Bios

 (31)命令uname——查看系统版本

    hostname 查看系统名

  uname -R 显示操作系统内核的version

(32)命令reboot、shutdown——关闭和重新启动计算机

   reboot   重新启动计算机

  shutdown -r now  重新启动计算机,停止服务后重新启动计算机

  shutdown -h now  关闭计算机,停止服务后再关闭系统

  halt   关闭计算机

  一般用shutdown -r now,在重启系统是,关闭相关服务,shutdown -h now也是如此。

(33) 命令su——切换用户

    su -  切换到root用户

    su – zhoulj 切换到zhoulj用户,

    注意:- ,他很关键,使用-,将使用用户的环境变量

(34)命令free——查看内存和swap分区使用情况

   Sarge:~# free -tm

(35)命令uptime——现在的时间 ,系统开机运转到现在经过的时间,连线的使用者数量,最近一分钟,五分钟和十五分钟的系统负载

   Sarge:~# uptime

(36) 命令vmstat——监视虚拟内存使用情况

   # vmstat

(37)命令iostat——磁盘吞吐量

   -c      只显示CPU行

   -d      显示磁盘行

   -k      以千字节为单位显示磁盘输出

   -t       在输出中包括时间戳

   -x      在输出中包括扩展的磁盘指标

(38)命令clear—— 清屏

(40)变更使用者chown

  变更文件或目录的拥有者或所属群组

  chown -R -h owner file

  - R(recursive)选项意味着对所有子目录下的文件也都进行同样的操作。

  - h选项意味着在改变符号链接文件的属主时不影响该链接所指向的目标文件

chown -R xh test1 (test1目录及子目录的所有文件属主变为xh)

(41)屏幕打印

Echo”no hello world” //打印到屏幕

 

1.查看要重启进程的进程号

  Ps –ef|grep xxxx

2.杀掉该项目的进程

  先杀第二列,再杀第一列

  Sudo kill -9 x x

  (x为进程号,同时杀多个中间以空格分割)

3.重启tomcat

  首先找到tomcat的bin目录

  Cd    tomcat/bin;

  然后运行 sudo ./run.sh即可启动tomcat。

 

  Maven 打包语句:mvn clean package –Dmaven.test.skip=true

 

修改语言

  vi /etc/sysconfig/i18n修改Linux语言 如:LANGUAGE="zh_EN"大写的改成小写的en esc,:wq source /etc/sysconfig/i18n

4.which cmd 查找cmd命令所在路径whereis安装位置

#which reboot

5.locate 文件查找—效率很快(用数据库)

#locate httpd.conf  //查找文件按所在

#updatedb    //更新数据库,使之生效

6.Find文件查找(效率很慢)

#find  /目录名  -name   httpd.conf

Find 路径 条件

 

 

系统

1、# 查看内核/操作系统/CPU信息

  # uname -a         

2、# 查看操作系统版本

  # head -n 1 /etc/issue  

3、# 查看CPU信息

  # cat /proc/cpuinfo 

4、# 查看计算机名

  # hostname

5、# 列出所有PCI设备

  # lspci -tv

6、# 列出所有USB设备

  # lsusb -tv

7、# 列出加载的内核模块

  # lsmod 

8、# 查看环境变量

  # env

资源

9、# 查看内存使用量和交换区使用量

  # free -m

10、# 查看各分区使用情况

  # df -h

11、# 查看指定目录的大小

  # du -sh <目录名>       

12、# 查看内存总量

  # grep MemTotal /proc/meminfo  

13、# 查看空闲内存量

  # grep MemFree /proc/meminfo  

14、# 查看系统运行时间、用户数、负载

  # uptime                

15、# 查看系统负载

  # cat /proc/loadavg     

磁盘和分区

1、# 查看挂接的分区状态

  # mount | column -t     

2、# 查看所有分区

  # fdisk -l             

3、# 查看所有交换分区

  # swapon -s            

4、# 查看磁盘参数(仅适用于IDE设备)

  # hdparm -i /dev/hda    

5、# 查看启动时IDE设备检测状况

  # dmesg | grep IDE      

 

网络

1、# 查看所有网络接口的属性

  # ifconfig

2、# 查看防火墙设置

  # iptables -L

3、# 查看路由表

  # route -n

4、# 查看所有监听端口

  # netstat -lntp

5、# 查看所有已经建立的连接

  # netstat -antp         

6、# 查看网络统计信息

  # netstat -s

 

进程

1、# 查看所有进程

  # ps -ef                

2、# 实时显示进程状态

  # top

用户

1、# 查看活动用户

  # w                     

2、# 查看指定用户信息

  # id <用户名> 

3、# 查看用户登录日志

  # last

4、# 查看系统所有用户

  # cut -d: -f1 /etc/passwd  

5、# 查看系统所有组

  # cut -d: -f1 /etc/group

6、# 查看当前用户的计划任务

  # crontab -l

 

服务

1、# 列出所有系统服务

  # chkconfig --list

2、# 列出所有启动的系统服务

  # chkconfig --list | grep on   

 

查看端口netstat –an

netstat -ano + tasklist /svc

 

netstat -ano 查找端口对应PID tasklist /svc 根据PID查找服务

netstat -tuln | grep 17002    查看端口情况

 

程序

1、# 查看所有安装的软件包

  # rpm -qa

 

 

  Apache lsof -i:80

  chkconfig --list 查看服务

2.关闭防火墙

Service iptables start/stop/restart关闭和开启

Service iptables status 查询状态

Chkconfig iptables --list 

Service iptables off/on

3.网卡启动

Service  network restart/status/stop

  apache重启命令:service httpd start 启动

 

  service httpd restart 重新启动

 

  service httpd stop 停止服务

 

解压:

  tar -xzvf union.kuche.com_20120209.tar.gz

 

复制

  cp  -a  union.kuche.com    union1.kuche.com

 

删除

rm -rf union.kuche.com

sudoer的配置:

普通用户想使用root权限:

Visudo -f/etc/sudoers

#启动VPN命令

  执行命令:service openvpn start

 

#修改工作目录

  vi /etc/passwd

 

shell中判断的表示:

-eq           //等于

-ne           //不等于

-gt            //大于

-lt            //小于

ge            //大于等于

le            //小于等于