Linux常用命令

http://www.chinaitlab.com/www/special/lincom.asp

 

 

1,查看内核版本命令:

cat   /proc/version

[bash-3.00]$ cat   /proc/version

Linux version 2.6.9-22.ELsmp (bhcompile@porky.build.redhat.com) (gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)) #1 SMP Mon Sep 19 18:32:14 EDT 2005

uname   -a

uname   -r cat   /etc/issue

man   uname

2,查看linux版本:抄录如下:

1) 登录到服务器执行 lsb_release -a ,即可列出所有版本信息,例如:

adapter-suse10:/etc # cat /etc/SuSE-release

SUSE Linux Enterprise Server 10 (i586)

VERSION = 10

adapter-suse10:/etc # lsb_release -a

LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:desktop-3.1-ia32:desktop-3.1-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch

Distributor ID: SUSE LINUX

Description:    SUSE Linux Enterprise Server 10 (i586)

Release:        10

Codename:       n/a

这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版。

2) 登录到unix执行cat /etc/*-release ,例如如下:

[bash-3.00]$ cat /etc/redhat-release

Red Hat Enterprise Linux ES release 4 (Nahant Update 2)

这种方式下可以直接看到具体的版本号,比如 AS4 Update 2

[adapter-suse10:/etc] # cat /etc/SuSE-release

SUSE Linux Enterprise Server 10 (i586)

VERSION = 10

3)登录到linux执行rpm -q redhat-release ,例如如下

bash-3.00$ rpm -q redhat-release

redhat-release-4ES-3

这种方式下可看到一个所谓的release号,比如上边的例子是3

这个release号和实际的版本之间存在一定的对应关系,如下:

redhat-release-3AS-1 -> Redhat Enterprise Linux AS 3

redhat-release-3AS-7.4 -> Redhat Enterprise Linux AS 3 Update 4

redhat-release-4AS-2 -> Redhat Enterprise Linux AS 4

redhat-release-4AS-2.4 -> Redhat Enterprise Linux AS 4 Update 1

redhat-release-4AS-3 -> Redhat Enterprise Linux AS 4 Update 2

redhat-release-4AS-4.1 -> Redhat Enterprise Linux AS 4 Update 3

redhat-release-4AS-5.5 -> Redhat Enterprise Linux AS 4 Update 4

注意:此种方法只对Redhat Linux有效

 

 

#查看开机运行时间

uptime

09:44:45 up 67 days, 23:32,  ...

:-) ,看来刚才确实是网段的问题,我的机器还是67天前开机的。

 

#系统资源使用情况

vmstat 1 -S m

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0    233    199    778    0    0     4    25    1    1  3  0 96  0  0
 0  0      0    233    199    778    0    0     0     0 1029  856 13  1 86  0  0

这个还是专门分一片文章来描述吧

 

  • 2.  批量替换文件

今天使用svn进行系统迁移,结果发现最初的路径写错了,导致无法访问源服务器,查看 .svn/entries 大致了解了一下里面的内容。重新迁移时间太久了,还是直接把文件替换掉吧

 

for f in $(find ./ -type f -name 'entries')
do
   sed -i "s/202/.68/.134/.18/202/.68/.134/.34/g" $f
done

 

sed 简单说明:

sed "s/sourcestring/newstring/g" $f

把 $f 文件中的 sourcestring 换成 newstring,输出到终端。s 表示搜索替换,/g表示全局。

sed -i $f

表示直接在 $f 中修改。

sed -iback $f

表示修改后的文件另存为 $fback

 

sed 中所有正则表达式都必须使用严格的转义符 / 来限定

sed 的正则比较严格: " / / ! 都需要分别用 /" // // /! 转义。

/n 表示换行

  • 3.  shell 变量 字符串操作

    mono 跑在linux下时,apache+mod_mono有时候需要加载的 Assembly 必须配置在 GAC 中,下面是一个脚本完成此功能

    cd bin

    for f in $(find ./ -name "*.dll")

    do

       gacutil -i $f

    done

     

    如果要从 GAC 中批量卸载这些 Assembly, 可以如下

    for f in $(ls *.dll)

    do

       gacutil -u ${f%%.dll}

    done

     

    其中就用到了字符串变量的替换, ${f%%.dll}

    ${f%%.dll} 的意义为 删除 $f 变量 .dll 及之后的所有内容

    相关的变量操作还有:

    ${f##.} 等,后面再补充

  •  

     

     

     

    su
      su命令是最基本的命令之一,常用于不同用户间切换。例如,如果登录为 user1,要切换为user2,只要用如下命令:
      $su user2
      然后系统提示输入user2口令,输入正确的口令之后就可以切换到user2。完成之后就可以用exit命令返回到user1。
      su命令的常见用法是变成根用户或超级用户。如果发出不带用户名的su命令 ,则系统提示输入根口令,输入之后则可切换为根用户。
      如果登录为根用户,则可以用su命令成为系统上任何用户而不需要口令。
      
      pwd
      pwd命令也是最常用最基本的命令之一,用于显示用户当前所在的目录。
      
      cd
      cd命令不仅显示当前状态,还改变当前状态,它的用发跟dos下的cd命令基本一致。
      cd ..可进入上一层目录
      cd -可进入上一个进入的目录
      cd ~可进入用户的home目录
      
      ls
      ls命令跟dos下的dir命令一样,用于显示当前目录的内容。
      如果想取得详细的信息,可用ls -l命令, 这样就可以显示目录内容的详细信息。
      如果目录下的文件太多,用一屏显示不了,可以用ls -l |more分屏显示 。
      
      find
      find命令用于查找文件。这个命令可以按文件名、建立或修改日期、所有者(通常是建立文件的用户)、文件长度或文件类型进行搜索。
      find命令的基本结构如下:
      $find
      其中指定从哪个目录开始搜索。指定搜索条件。表示找到文件怎么处理。一般来说,要用-print动作,显示 整个文件路径和名称。如果没有这个动作,则find命令进行所要搜索而不显示结果,等于白费劲。
      例如,要搜索系统上所有名称为ye的文件,可用如下命令:
      $find / -name ye -print
      这样就可以显示出系统上所有名称为ye的文件。
      
      tar
      tar最初用于建立磁带备份系统,目前广泛用于建立文件发布档案。可用如下方法建立tar档案:
      $tar cvf
      例如,如果要将当前目录中所有文件存档到ye.tar中,可用如下命令:
      $tar cvf ye.tar *.*
      要浏览档案内容,将c选项变成t。如果要浏览ye.tar档案中的内容,可用如下命令:
      $tar tvf ye.tar
      要取出档案内的内容,将c选项变成x。如果要将ye.tar档案中的内容取到当前目录中,可用如下命令:
      $tar xvf ye.tar
      
      gzip
      gzip命令用于压缩文件。 例如,如果要将ye.txt文件压缩,可用如下命令:
      $gzip ye.txt
      这样就可以压缩文件并在文件名后面加上gz扩展名,变成文件ye.txt.gz。
      解压缩文件可用gzip -d命令实现:
      $gzip -d ye.txt.gz
      这样就可以解压缩文件并删除gz扩展名。除此之外还可以用gunzip命令来解 压缩文件,效果跟用gzip -d命令一样。
      旧版的tar命令不压缩档案,可用gzip压缩。例如:
      $tar cvf ye.tar *.txt
      $gzip ye.tar
      则可建立压缩档案ye.tar.gz。
      新版的tar可以直接访问和建立gzip压缩的tar档案,只要在tar命令中加上z 选项就可以了。例如:
      $tar czvf ye.tar *.txt
      生成压缩档案ye.tar.gz,
      $tar tzvf ye.tar *.txt
      显示压缩档案ye.tar.gz的内容,而
      $tar xzvf ye.tar *.txt
      取出压缩档案ye.tar.gz的内容。
      
      mkdir
      这个命令很简单,跟dos的md命令用法几乎一样,用于建立目录。
      
      cp
      cp命令用于复制文件或目录。
      cp命令可以一次复制多个文件,例如:
      $cp *.txt *.doc *.bak /home
      将当前目录中扩展名为txt、doc和bak的文件全部复制到/home目录中。
      如果要复制整个目录及其所有子目录,可以用cp -R命令。
      
      rm
      rm命令用于删除文件或目录。
      rm命令会强制删除文件,如果想要在删除时提示确认,可用rm -i命令。
      如果要删除目录,可用rm -r命令。rm -r命令在删除目录时,每删除一个文件或目录都会显示提示,如果目录太大,响应每个提示是不现实的。这时可以用 rm -rf命令来强制删除目录,这样即使用了-i标志也当无效处理。
      
      mv
      mv命令用于移动文件和更名文件。例如:
      $mv ye.txt /home
      将当前目录下的ye.txt文件移动到/home目录下,
      $mv ye.txt ye1.txt
      将ye.txt文件改名为ye1.txt。
      类似于跟cp命令,mv命令也可以一次移动多个文件,在此不再赘叙。
      
      reboot
      重启命令,不必多说。
      
      halt
      关机命令,不必多说。

     

     

     

    常用的系统状态查询命令

     

     # lsdev –C –s scsi
      列出各个SCSI设备的所有相关信息:如逻辑单元号,硬件地址及设备文件名等。
      # ps -ef
      列出正在运行的所有进程的各种信息:如进程号及进程名等。
      # netstat -rn
      列出网卡状态及路由信息等。
      # netstat -in
      列出网卡状态及网络配置信息。
      # df -k
      列出已加载的逻辑卷及其大小信息。
      # mount
      列出已加载的逻辑卷及其加载位置。
      # uname -a
      列出系统ID 号,系统名称,OS版本等信息。
      # hostname
      列出系统网络名称。
      # lsvg –l rootvg,lsvg –p rootvg
      显示逻辑卷组信息,如包含哪些物理盘及逻辑卷等。
      # lslv –l datalv,lslv –p datalv
      显示逻辑卷各种信息,如包含哪些盘,是否有镜像等。
      八 网络故障定位方法
      网络不通的诊断过程:
      ifconfig 查看网卡是否启动 (up)
      netstat –i 查看网卡状态
      Ierrs/Ipkts 和 Oerrs/Opkts是否>1%
      ping自己网卡地址 (ip 地址)
      ping其它机器地址,如不通,在其机器上用diag检测网卡是否有问题。
      在同一网中, subnetmask 应一致。
      网络配置的基本方法:
      (1) 如需修改网络地址、主机名等,一定要用 chdev 命令
      # chdev –l inet0 –a hostname=myhost
      # chdev -l en0 -a netaddr='9.3.240.58' -a netmask=255.255.255.0’
      (2) 查看网卡状态:# lsdev –Cc if
      (3) 确认网络地址:# ifconfig en0
      (4) 启动网卡:# ifconfig en0 up
      (5) 配置路由
      有两种方式加入路由:
      永久路由
      # chdev -l inet0 -a route=’10.47.0.0’,’9.3.240.59’
      临时路由
      # route add 10.47.1.2 9.3.240.59
      用命令 netstat -rn 查看路由表
      附:常用命令列表:
      Any XXXX, ####, ****, or X is to be substituted by a name, resource name or #,
      fn = filename
      DIR = Directory
      | = pipe symbol
      
      bosboot -a -d /dev/hdiskx -rebuilds boot record/image on boot device(hdiskx)
      cat -view contents of a file
      cat /tmp/****.1 -view a file, look at output
      cat fn fn > newfile -combines two files to a single file
      cd -will return you to default DIR
      cd / -will put in root DIR
      cd /xxxx -change you to a DIR anywhere is system
      cd .. -will drop you out of 1 DIR at a time
      cd xxxxx -will change you to a DIR in current dir
      cfgmgr -will auto config devices
      cfgmgr -v & -(-v) shows processes (&) puts in background
      chps -s xx hd# -increase paging space (xx=# of addt'l PPs)
      cp oldfn newfn -copy a file
      cp oldfn Dirn -copy a file to another directory
      crontab -l -list crontab entries for the current user
      ctrl + v -will page down 1 page
      ctrl + 6 -will page up 1 page
      del fn -same as rm -i,promts to remove fn
      df -I -shows status of file systems (no inodes)
      df -Ik -(k) show status in 1024 bites(1mb)(only AIX 4
      diag -a -updates changes in hardware configuration
      diag ***** -****= a device type(as tape,disk....Fastpath)
      diag -cd rmtX -resets tape drive
      dosformat -formats a diskette to DOS
      dosdir -list files on dos formated diskette
      dosread XX YY -copies dos file XX to aix file YY
      doswrite YY XX -copies aix file YY to dos file XX
      errpt -generates a one line synopsis of logged errors
      errpt | pg -list errorlog 1 page @ a time(1st column is ID)
      errpt -a -displays detailed information of logged errors
      errpt -s Mmddhhmmyy -select entries posted later than date
      errpt -aj XXXXXXX -list detail error by ID number.(XXX=1st column)
      errpt -d S -list software errors
      errpt -j XXXXXXX -list summary report by ID number.
      errpt -aN XXXXXX -list detailed report by resource name column
      errpt -N XXXXXXX -list summary report by resource name column
      errclear 0 -clears errorlog
      errclear -N XXXXX 0 -clears errorlog by resource name, 0=all enter
      errclear -j XXXXX 0 -clears errorlog by ID number.
      finger -same as who but with more details
      flcopy -copies a diskette to another diskette
      format -formats a diskette in default diskette drive
      format -l -formats in lower denity: 1.44 on 2.44 / 720 on 1.44
      hostname -responds with host system name
      host (hostname) -responds with internet address
      instfix -ik IPAR# -lists ipar fix was completely installed
      lppchk -v -checks install status of LPPs
      lppchk -v 2> /dev/lpX -sends output of lppchk to printer lpx
      lpstat -a all -view all printer queues
      lptest 80 5 > /dev/lp0 -send test pattern to lp0
      ls -list names of files & directories in current dir
      ls -lia -list details of files, current dir & subdir
      ls -al -list details of files or dir in current dir
      lsattr -El xxxxxx -list specific settings on a device
      lsdev -C | sort -d -f -list system hardware (devices)
      lsdev -C | grep 00-0X -list resourses for a adapter
      lsdev -Cc xxxxx -H -list devices(xxx=tty,printer,disk,memory,adpt
      lsdev -Cs scsi -list scsi devices(not serial or raid)
      lsdev -Cc tape -list tape devices
      lsdev -Cs pci -list pci devices
      lsdev -Cs isa -list isa devices
      lscons -lists the assigned console
      lscfg -list hardware list (same as diags list)
      lscfg -rl mem* |pg -lists the memory on PCI bus machines
      lscfg -vl XXXXX -list config info from a device.(rmt0,hdisk,etc)
      lscfg -vl sysplanar0 -lists the machine type, model, s/n on SMP
      lsfs -list all filesystems + data from "df" cmd
      lslpp -l | grep BROKEN -lists incomplete ptfs
      lslv -m hd5 -finds boot drive under pv1 column
      lsps -a -checks available paging space
      lsps -s -checks available paging space
      lspv -lists information about the physical volumes
      lspv hdisk# -list drive info
      lspv -l hdisk# -lists logical volume group disk in
      lsuser -f ALL -lists all attributes for all users
      lsvg -lists volume groups
      lsvg -p XXXXXX -lists disks in volume group (xxxxx= volume name)
      more -reads files and displays the text one screen at a time.
      mpcfg -df -list all setting the machine is set to (smp)
      mpcfg -cf 11 1 -changes to fast IPL on SMP machines (smp)
      mv fn (path fn) -move and rename a file
      oslevel -shows AIX version (3.2.4 and above)
      pg -reads and displays text one screen at a time.
      pdisable -makes unavailable or shows all disabled tty's
      pdisable tty# -disables a tty
      penable -makes available or shows all enabled tty's
      penable tty# -enables a tty
      ps -el |pg -look at process running on system
      pwd -list what DIR you are currently in
      r -repeats last command
      rm -i ******* -remove a file & will prompt you if you are sure
      rmdev -l XXXXX -removes a device and defines it to data base
      rmdev -l XXXXX -d -removes a device and deletes it from data base
      set -o vi -sets up to veiw cammands that have been run
      :wq -write(save) and quit file
      Esc + k -used with SET command to list last command
      k,l -k=list next command ran, l=steps you thru command
      I -use with SET command inserts characters
      j -steps you backwards
      cw -cw=removes a word,just type in new word
      (use with Esc)
      a,x,r -a=added text, x=delete text, r=replace text(r+letter)
      R -lets you type over letters or words
      smit ***** -(*****= tape,disk,tty,etc.fastpath)
      su -stands for switch user,(NOT super user)
      su -switches to root id or prompts you for password
      su XXXXXX -switches to XXXXXX's id
      tar -cvf /dev/rmtX /etc -will copy /etc to a tape drive
      tar -tvf /dev/rmtX -will read a tape drive
      tctl -f /dev/rmtX rewoffl -rewind & eject tape
      tctl -f /dev/rmtX.1 fsf 3 -forward advances a tape to be read by TAR
      tctl -F -list avail commands(-F flag is not correct)
      tctl retension -retensions tape in tape drive
      & -put any command in background with process ID<

     

     

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值