Linux常用命令大全(非常全!!!)
最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考:
系统信息
1 | arch 显示机器的处理器架构(1) |
关机 (系统的关机、重启以及登出 )
1 | shutdown -h now 关闭系统(1) |
文件和目录
1 | cd /home 进入 '/ home' 目录' |
文件搜索
1 | find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录 |
挂载一个文件系统
1 | mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在 |
磁盘空间
1 | df -h 显示已经挂载的分区列表 |
用户和群组
1 | groupadd group_name 创建一个新用户组 |
文件的权限 - 使用 “+” 设置权限,使用 “-“ 用于取消
1 | ls -lh 显示权限 |
文件的特殊属性 - 使用 “+” 设置权限,使用 “-“ 用于取消
1 | chattr +a file1 只允许以追加方式读写文件 |
打包和压缩文件
1 | bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件 |
RPM 包 - (Fedora, Redhat及类似系统)
1 | rpm -ivh package.rpm 安装一个rpm包 |
YUM 软件包升级器 - (Fedora, RedHat及类似系统)
1 | yum install package_name 下载并安装一个rpm包 |
DEB 包 (Debian, Ubuntu 以及类似系统)
1 | dpkg -i package.deb 安装/更新一个 deb 包 |
APT 软件工具 (Debian, Ubuntu 以及类似系统)
1 | apt-get install package_name 安装/更新一个 deb 包 |
查看文件内容
1 | cat file1 从第一个字节开始正向查看文件的内容 |
文本处理
1 | cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT |
字符设置和文件格式转换
1 | dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX |
文件系统分析
1 | badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块 |
初始化一个文件系统
1 | mkfs /dev/hda1 在hda1分区创建一个文件系统 |
SWAP文件系统
1 | mkswap /dev/hda3 创建一个swap文件系统 |
备份
1 | dump -0aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的完整备份 |
光盘
1 | cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一个可复写的光盘内容 |
网络 - (以太网和WIFI无线)
1 | ifconfig eth0 显示一个以太网卡的配置 |
JPS工具
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。
我想很多人都是用过unix系统里的ps命令,这个命令主要是用来显示当前系统的进程情况,有哪些进程,及其 id。 jps 也是一样,它的作用是显示当前系统的java进程情况,及其id号。我们可以通过它来查看我们到底启动了几个java进程(因为每一个java程序都会独占一个java虚拟机实例),和他们的进程号(为下面几个程序做准备),并可通过opt来查看这些进程的详细启动参数。
使用方法:在当前命令行下打 jps(需要JAVA_HOME,没有的话,到改程序的目录下打) 。
jps存放在JAVA_HOME/bin/jps,使用时为了方便请将JAVA_HOME/bin/加入到Path.
$> jps
23991 Jps
23789 BossMain
23651 Resin
比较常用的参数:
-q 只显示pid,不显示class名称,jar文件名和传递给main 方法的参数
$> jps -q
28680
23789
23651
-m 输出传递给main 方法的参数,在嵌入式jvm上可能是null
$> jps -m
28715 Jps -m
23789 BossMain
23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log
-l 输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名
$> jps -l
28729 sun.tools.jps.Jps
23789 com.asiainfo.aimc.bossbi.BossMain
23651 com.caucho.server.resin.Resin
-v 输出传递给JVM的参数
$> jps -v
23789 BossMain
28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/data/aoxj/jd
k15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m
23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -
Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl
sudo jps看到的进程数量最全
jps 192.168.0.77
列出远程服务器192.168.0.77机器所有的jvm实例,采用rmi协议,默认连接端口为1099
(前提是远程服务器提供jstatd服务)