`

linux基本常用命令勿忘笔记

阅读更多
常用的linux基本命令
   这些天在鼓捣linux时,一些基本的命令长久时间没有使用,忘记了,有些基本命令场用印象到时深刻,但是有些偶尔会用到,时间久了难免会忘记,然后又是花时间去查找,这样浪费时间挺不值的,现记录下一些自己平时用到而且容易忘记的命令,以便日后查询使用
1.pwd       显示当前目录路径
2.mkdir dir   创建目录
3.cd dir      进入目录
  cd ..     回到上级目录
  cd /     回到根目录
  cd ~/cd  回到当前用户的home目录下
4.ls    显示目录文件,一般情况下用到这个就可以
  ls -a  列出目录下的所有文件,包括以 . 开头的隐含文件
  ls -t  以时间排序
  ls -h  生成的结果有利于浏览
  ls -l  列出文件的详细信息
  …………
例如:
ubuntu@ip-10-250-31-239:~$ ls -lhta
total  12M
drwx------  2  ubuntu  ubuntu  4.0K   Apr 11 00:41    .ssh
-rw-r--r--  1   root    root    12M   Dec 12  2012   node-v0.8.16.tar.gz
…… …… ……

第1字段:  文件属性字段 文件属性字段总共有10个字母组成,第一个字母表示文件类型,如果这个字母是一个减号”-”,则说明该文件是一个普通文件.字母”d”表示该文件是一个目录,字母”d”,是dirtectory(目录)的缩写. 第2字段:文件硬链接数或目录子目录数 第3字段:文件拥有者 第4字段:文件拥有者所在的组 第5字段:文件文件大小(以字节为单位) 第6字段:文件创建月份 第7字段:文件创建日期 第8字段:文件创建时间 第9字段:文件名 (如果是一个符号链接,那么会有一个 “->” 箭头符号,后面跟一个它指向的文件)
5.du  显示所有目录和文件大小
  du -m   以1m为单位显示




6.cp 复制文件
  将文件filename1  复制后为  文件 filename2
  cp filename1 filename2 
  cp config/cache_store.yml.example  config/cache_store.yml

  cp -f file1 file2   将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复     
                 制的模式
  cp -R file1 file2  将目录dir1复制成目录dir2
7. mv  移动或更名现有的文件或目录。
  mv  file1 file2  将file1的名字改为file2
  mv  file1 /opt  将file1移动opt目录下,没有改名
  mv  file1 /opt/file2 将file1移到opt下并将file1名字改为file2
  mv  file1/* /opt/file2 将file1下所有文件移动file2下面

8.rm  删除档案及目录
  参数:
    -i 删除前逐一询问确认
    -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认
    -r 将目录及以下之档案亦逐一删除
rm filename      删除文件
rm -rf filename    删除目录,使用这个要相当谨慎,
删除某个重要文件之前最好能够备份一下
如果不小心删除某个文件,请试着使用系统自带还工具debugfs来修复,参考地址:
http://jingyan.baidu.com/article/2f9b480d6c2bcd41cb6cc223.html?qq-pf-to=pcqq.c2c
http://loamy.iteye.com/blog/422462

9.tar 备份文件
  tar  czvf  backupfilename.tar  filename
  解压备份
  tar  zxvf  backfilename.tar

10.find 
   参数:
-name   filename             #查找名为filename的文件
-perm                        #按执行权限来查找
-user    username             #按文件属主来查找
-group groupname            #按组来查找
-mtime   -n +n                #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime    -n +n               #按文件访问时间来查GIN: 0px">
-ctime    -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup                     #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                     #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer   f1 !f2              找文件,-n指n天以内,+n指n天以前
-ctime    -n +n               #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup                     #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                      #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer   f1 !f2               #查更改时间比f1新但比f2旧的文件
-type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size      n[c]               #查长度为n块[或n字节]的文件
-depth                       #使查找在进入子目录前先行查找完本目录
-fstype                     #查更改时间比f1新但比f2旧的文件
-type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size      n[c]               #查长度为n块[或n字节]的文件
-depth                       #使查找在进入子目录前先行查找完本目录
-fstype                      #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount                       #查文件时不跨越文件系统mount点
-follow                      #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio                %;      #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount                       #查文件时不跨越文件系统mount点
-follow                      #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio                        #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune                       #忽略某个目录
例如:
ubuntu@ip-10-250-31-239:/$ sudo find -name apache2
  ./etc/init.d/apache2
./etc/logrotate.d/apache2
./etc/cron.daily/apache2
./etc/apache2
./etc/default/apache2
./usr/sbin/apache2
…………


11. grep
    一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.要用好grep这个工具,其实就是要写好正则表达式
$ ls -l | grep '^a'  通过管道过滤ls -l输出的内容,只显示以a开头的行
$ grep 'test' d*   有以d开头的文件中包含test的行
$ grep 'test' aa bb cc  显示在aa,bb,cc文件的行
拓展命令
    egrep 命令,搜索文件获得模式。

12.man
   Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。
例如:
ubuntu@ip-10-250-31-239:/$ man ls
显示出ls的用法和参数
Manual page ls(1) line 1 (press h for help or q to quit)最好输入q退出

13.ps
   ps命令给出正在运行的某个进程的状态,每个进程有特定的id成为PID
参数:
-A :所有的 process 均显示出来,与 -e 具有同样的效用;
-a :不与 terminal 有关的所有 process ;
-u :有效使用者 (effective user) 相关的 process ;
x :通常与 a 这个参数一起使用,可列出较完整信息。
输出格式规划:
l :较长、较详细的将该 PID 的的信息列出;
j :工作的格式 (jobs format)
-f :做一个更为完整的输出。

ps aux  列出目前所有的正在内存当中的程序
ps -l    将目前属于您自己这次登入的 PID 与相关信息列示出来
常与grep并用

14.kill
    用来杀死已经无关紧要或者没有响应的进程
    杀死一个进程需要知道进程的PID.
    ps -ef 查看当前用户下所有的进程
    ps -ef|grep httpd/ ps -A | grep -i apache2  查看httpd的pid
    然后 kill -pid 结束进程
    *killall命令
  killall命令杀死同一进程组内的所有进程。其允许指定要终止的进程的名称,而非PID。
  # killall httpd

 # kill -HUP PID
  该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。

15.whereis
    whereis命令用来查找命令的位置,包括执行文件、源代码和手册页文件(locate the binary, source, and manual page files for a command)。如果要查找任意文件的所在位置,可以使用locate或者find等命令
    whereis [ -s ] [ -b ] [ -m ] [ -u ] [ { { -S | -B | -M } Directory ... }... -f ] 要找的文件名
-b 搜索文件的二进制部分。
-m 搜索文件的手册部分。
-s 搜索文件的源部分。
-u 没有说明文档的文件
例如
ubuntu@ip-10-250-31-239:~$ whereis postgresql
postgresql: /etc/postgresql /usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql

16.service
   命令控制服务的启动、停止和重启,它让你能够不重启整个系统就可以让配置生效以开启、停止或者重启某个服务
例如
service  apache2  start
service  apache2  restart
service  apache2  stop

17. alias
  是一个系统自建的shell命令,允许你为名字比较长的或者经常使用的命令指定别名
例如:
ubuntu@ip-10-250-31-239:~$ alias l='ls -l'
ubuntu@ip-10-250-31-239:~$ l
total 11632
drwxr-xr-x 14 root  root      4096 Apr 18 02:10 canvas
drwxr-xr-x 10 24561 staff     4096 Apr 18 04:12 node-v0.8.16
-rw-r--r--  1 root  root  11899509 Dec 12  2012 node-v0.8.16.tar.gz
去掉’l'别名,要使用unalias命令
例如:
ubuntu@ip-10-250-31-239:~$ unalias l
ubuntu@ip-10-250-31-239:~$ l
l: command not found
ubuntu@ip-10-250-31-239:~$



18.df
   报告系统的磁盘使用情况。在跟踪磁盘使用情况方面对于普通用户和系统管理员都很有用。 ‘df‘ 通过检查目录大小工作,但这一数值仅当文件关闭时才得到更新
ubuntu@ip-10-250-31-239:~$ df
Filesystem     1K-blocks     Used  Available  Use%  Mounted on
/dev/xvda1       8256952  2690192   5147332  35%  /
udev              294136      12    294124   1%   /dev
tmpfs             120872     200    120672   1%   /run
none                5120       0      5120   0%   /run/lock
none              302180       0    302180   0%   /run/shm
ubuntu@ip-10-250-31-239:~$

19.echo
  显示文字
ubuntu@ip-10-250-31-239:~$ echo "dian di yun"
dian di yun
ubuntu@ip-10-250-31-239:~$

20.wget
   是用于非交互式(例如后台)下载文件的免费工具.支持HTTP, HTTPS, FTP协议和 HTTP 代

例如:
wget  url

21.free
  显示内存状态
free命令详解:  功能说明:显示内存状态。   
语  法: free [-bkmotV][-s ]   
补充说明:free指令会显示内存的使用情况,包括实体内存,虚拟的交换文档内存,共享内存区段,连同系统核心使用的缓冲区等。  
参  数:   
-b     以Byte为单位显示内存使用情况。  
-k    以KB为单位显示内存使用情况。  
-m   以MB为单位显示内存使用情况。  
-o    不显示缓冲区调节列。  
-s    持续观察内存使用状况。  
-t     显示内存总和列。  
-V   显示版本信息。
例如:
ubuntu@ip-10-250-31-239:~$ free -m
                 total       used       free     shared    buffers     cached
Mem:            590        572         17          0        130        256
-/+ buffers/cache:  185        405
Swap:            0          0          0
22. ifconfig
   用于显示或配置网络设备(网络接口卡)的命令
ubuntu@ip-10-250-31-239:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 22:00:0a:fa:1f:ef 
          inet addr:10.250.31.239  Bcast:10.250.31.255  Mask:255.255.255.192
          inet6 addr: fe80::2000:aff:fefa:1fef/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3481075 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1382616 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3836200331 (3.8 GB)  TX bytes:194867450 (194.8 MB)
          Interrupt:25

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3294499 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3294499 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1025117298 (1.0 GB)  TX bytes:1025117298 (1.0 GB)

23.netstat
   用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等
参数:
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
列出所有端口 netstat -a
列出所有 tcp 端口 netstat -at
列出所有 udp 端口 netstat -au
详细信息,请参看:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics