爱程序网

linux-常用命令

来源: 阅读:

最近,常在windows上使用用SecureCRT链接Linux管理java项目,好久不操作了,简单命令也记不起来了。因此,开通了博客园,开始记录自己的点滴

1.想要知道连接的linux版本


  • cat /proc/version

  

  • cat /etc/issue

  

  • lsb_release -a

2.cd,改变目录(pwd,显示当前目录)


  • cd /:进入根目录(cd /)
  • cd ..:回到上级目录(cd ..)
  • pwd:显示当前所在的目录(pwd)

3.ls,列出文件名


 

4.touch 文件名,创建文件


 

5.less 文件名,分页查看文件内容,支持上下键,很神奇


 

6.q,退出打开的文件,与less配合使用


 

7.cat,显示全部文件内容


 

8.tail,显示文件尾部内容


常用参数

-f,自动刷新读取

-n<行数>,读取<行数>行

例如:tail -n 5 log2014.log,读取最后5行

     tail -n +5 log2014.log,从第5行开始读取

 

9.文件夹


  • mkdir 文件夹名,创建文件夹
  • cp -rf 源目录 目标目录,目录复制
  • mv 源目录/文件 目标目录,剪切目录/文件
  • mv 源目录 目标目录,目录重命名
  • rm -rf /home/hadoop/*,删除hadoop下所有子目录和文件
  • rm -rf /home/hadoop,删除hadoop及子目录、文件
  • rmdir删除空目录

 

10.文件


  • touch 文件名,新建文件

 

  • vi 文件名,打开或新建文件,并将光标置于第一行首
  • vi +n 文件名 ,打开文件,并将光标置于第n行首
  • vi + 文件名,打开文件,并将光标置于最后一行首
  • vi +/pattern 文件名,打开文件,并将光标置于第一个与pattern匹配的串处
  • vi -r 文件名,在上次正用vi编辑时发生系统崩溃,恢复“文件名”
  • vi之后使用键入 i, a, o 等命令,可进入插入模式

    i 在光标之前插入
    a 在光标之后插入

    I 在光标所在行的行首插入
     在光标所在行的行末插入

     在光标所在的行的上面插入一行
     在光标所在的行的下面插入一行

    r 替换当前字符
    R 替换当前字符及其后的字符,直至按ESC键

     删除光标后的一个字符,然后进入插入模式
     删除光标所在的行,然后进入插入模式

    x 删除一个字符    

    dd 删除光标当前行           
    ndd 删除n                 
    yy 复制当前行                
    nyy 复制n                  
    p,P 粘贴                     
    u  撤消                      
    [Ctrl]+r 重做上一个动作

  • 编辑之后,"Esc"键,使用以下命令保存/退出

    :w 保存文件但不退出vi 

    :w! 强制保存,不推出vi

    :wq 保存文件并退出vi 
    :wq! 强制保存文件,并退出vi
    :q 不保存文件,退出vi
    :q!不保存文件,强制退出vi 
    :e! 放弃所有修改,从上次保存文件开始再编辑

 

  • echo 字符串 >> 文件,附加输出文字
  • echo -n 字符串 >> 文件,附件输出文字后不换行
  • echo -e 字符串 >> 文件,附加输出文字,对字符串使用转义
  • rm 删除文件
  • mv 源文件 目标文件,文件重命名/移动文件

 注:echo 字符串 > 文件,覆盖输出哦

11.rz,上传文件, 选择要传送的文件


 

12.sz 文件名,下载文件, 指定文件名,enter敲,即下载到个人目录download目录下


 

13.jps,显示java进程


 

14.nohup java -jar /home/cargo/ctas/mf-ffm-receiver/ffm-receiver.jar >/dev/null 2>&1 &,执行可执行jar包并不输出


 

由于使用java -jar /home/cargo/ctas/mf-ffm-receiver/ffm-receiver.jar,当连接关闭后,java进程会结束,所以不可用
注:linux有三种重定向:
 0 :表示标准输入
 1 :标准输出,在一般使用时,默认的是标准输出
 2 :标准错误信息输出
 “>/dev/null 2>&1”,把标准输出重定向到/dev/null,错误输出重定向到标准输出,最终就是什么也不输出
 
15.压缩文件
tar -zxvf **.tar.gz
tar -xvf **.tar
tar -jxvf ****.tar.bz(或bz2)
 参数说明:
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个
 
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
这几个参数是根据需要在压缩或解压档案时可选的
 
-f是必须的,这个参数是最后一个参数,后面只能接档案名
 
16.su - root,切换环境和用户
  • su 不加任何参数, 切换为root用户,但没有改变root登录环境
  • su - ,表示默认切换到root用户,并且改变到root用户的环境
  • su - 用户名,表示默认切换到用户名,并且改变到用户名的环境
 
17.sudo,查看、修改或者执行某些命令需要root用户的权限,如果不想直接切换到root用户,就可以使用sudo命令。sudo命令用于针对单个命令授予临时权限

使用这个命令,要先到root用户下通过visudo 来改/etc/sudoers对普通用户授权,在/etc/sudoers添加
  • cargo ALL=/bin/more,也就是cargo用户可以执行:sudo more命令了
  • cargo ALL=(ALL) ALL,cargo用户可以执行所有命令
ALL=(ALL) ALL的意思是:网络主机=(目标用户) 命令
 
18.ps,强大的命令,查进程
参数说明:

l 长格式输出;

u 按用户名和启动时间的顺序来显示进程;

j 用任务格式来显示进程;

f 用树形格式来显示进程;

a 显示所有用户的所有进程(包括其它用户);

x 显示无控制终端的进程;

r 显示运行中的进程;

ww 避免详细参数被截断

-e 显示所有进程,环境变量
-f 用树形格式来显示进程

 

经常用:ps -ef|grep mf-,查找包含mf-的进程
    ps aux,此命令显示数据说明:

      USER: 进程所有者
      PID: 进程ID

      %CPU: 占用的 CPU 使用率

      %MEM: 占用的内存使用率
      VSZ: 占用的虚拟内存大小
      RSS: 占用的内存大小

      TTY: 终端的次要装置号码 (minor device number of tty)

      STAT: 进程状态:

      START: 启动进程的时间; 
      TIME: 进程消耗CPU的时间;
      COMMAND:命令的名称和参数;

 19.chown,将指定文件的拥有者改为指定的用户或组
 chown -R cargo /opt/app,改变/opt/app目录以及其子目录下的所有文件拥有者为cargo
 
20.chmod,改变文件权限
命令格式:chmod [who]operator[permission] filename
  who包含的选项及其含义:
        u 文件属主权限
        g 属组用户权限
        o 其他用户权限
        a 所有用户(文件属主、属组用户及其他用户)

    operator包含的选项及其含义:
        + 增加权限
        - 取消权限
        = 设定权限
   
    permission包含的选项及其含义:
        r 读权限
        w 写权限
        x 执行权限
        s 文件属主和组set-ID
        t 粘性位*
        l 给文件加锁,使其他用户无法访问
        u,g,o 针对文件属主、属组用户及其他用户的操作 
例如:chmod u+w ./cargo,目录属主加写权限
     chmod -u+w ./cargo,目录及子目录、文件属主加写权限
 
21.cp,本机拷贝
cp -r ./scpfrom ./scpto,复制目录本身和子目录、文件
cp ./scpfrom ./scpto,无效果
cp ./scpfrom/* ./scpto,复制子文件
cp -r ./scpfrom/* ./scpto,复制子目录、文件
 
22.scp,远程拷贝 
scp /home/cargo/scpfrom/*.properties cargo@10.6.54.232: /home/cargo/scpto
 
23.ls,列出文件和目录,及属主、权限等
常用:ls -lih
 
24.find,查找目录/文件
常用:find  ./   -type   d   |   wc   -l ,统计目录个数
   find  ./   -type   f   |   wc   -l,统计文件个数
     find /opt/app/jboss-eap-6.3/mfoc-logs/ -name "mfoc*.log*" ,查找以mfoc开头包含.log的文件
    find /opt/app/jboss-eap-6.3/mfoc-logs/  -size   +512k  ,查大于512k的文件
 

25.查看空间大小


  •  df,以磁盘挂载点形式显示使用情况
    常用:df -hl
  • du,查看文件/目录的占用空间
    常用:du -h /opt,显示/opt子目录的目录大小和当前目录的总的大小
       du -hs /opt,仅显示/opt总的大小
         du --max-depth=1 -h,显示当前目录和第一层子目录大小
 
26.查看系统的用户和组
  • /etc/group,格式如下:组名:口令:GID:用户列表
  • /etc/passwd,格式如下:用户名:口令:UID:GID:注解:用户主目录:登陆后自动执行命令
  • /etc/shadow,格式如下:用户名:口令:上一次修改的时间(从1970.1.1的天数):口令在两次修改间的最小天数:口令修改之前向用户发出警告的天数:口令终止后账号被禁用的天数:从1970.1.1起账号被禁用的天数:保留域
常用命令:groups yh,查看yh所属的用户组
 
27.file,查看文件编码
返回类似 ./mfoc.log: UTF-8 Unicode text
知道了编码就可以转换内容了:iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt,utf-8编码转换为gb2312编码输出到bbb.txt
转换文件名:convmv -f GBK -t UTF-8 --notest *.mp3
 
28.netstat,端口占用 

常用参数

-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令

例如:netstat –apn|grep 8080,查看8080端口占用情况

 
 
 
 
 

 目前用到这些,以后再补充

关于爱程序网 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助