linux-linux常用命令汇总

来源:互联网 发布:js fetch api 编辑:程序博客网 时间:2024/03/29 20:07

文件查找
find /home -name test.txt
在home目录及其子目录下查找文件名为test.txt的文件–查找(在哪里找,找什么)
如果存在则返回文件存放路径,如果没有则不显示


物理机/虚拟机查看
lshw -class system


查看进程信息
ps -x 查看守护进程:
ps -ef显示所有信息(包括命令行)
ps -aux查看所有包含其他使用者的详细进程:(包括所有的用户的进程)


查看redhat版本号:
cat /etc/redhat-release


文件查找命令:
find /yves -name test.txt 在yves目录及其子目录下查找文件名为test.txt的文件
如果存在则返回文件存放路径,如果没有则不显示


查看httpd是的启动状态,和监听的端口(apache中)
netstat -nltup |grep httpd查看本机上是否启动成功apache


查看内存使用情况:
free


linux中查看所有的环境变量:
env ``(不需要$)
echo $HOME 查看某个环境变量:


输出进程的堆栈信息到a文件:
jstack 进程号 > a


查看文件大小的命令:
du -sh 文件夹名/文件名


linux中rredhat命令中管理防火墙:
systemctl stop firewalld (关闭防火墙)
systemctl disable firewalld (禁用防火墙)


连接某个端口:
telnet 192.168.2.71 888 (tel net ip port)
netstat -antp | grep 888 (net stat -ant p | grep port)


kill命令:
kill -9 进程号


grep可以写多个条件
ps -ef | grep yves| grep node (两个查询条件, yves和 node)


临时切换到root用户
su -l 用户名 切换登录该用户
su root 然后输入密码,这时候的root用户用的环境变量是之前用户的环境变量.


查看linux查看系统版本 和 系统位数
方式一:getconf LONG_BIT 结果: 64 或者 32 (推荐)
方式二:arch 结果; x86_64
方式三:uname -a 结果: 显示系统详情
方式四:lsb_release -a


linux中设置环境变量的几种方式:
注意:配置环境变量,有两种方式:
一种是配置系统环境变量,需要root权限
一种是配置用户环境变量,不需要root权限.只需要登录用户即可.
a)显示环境变量HOME
echo $HOME 显示结果 /home/yves
b)设置一个新的环境变量
export HELLO="Hello"
echo $HELLO 查看刚才的坏境变量
将已有的环境变量设置为只读 readonly HELLO 只读的环境变量不能删除,也不能被修改
c)env 显示所有的环境变量
env | grep JAVA_HOME 查看jdk路径
d)删除环境变量
unset $环境变量名
e)系统环境变量的设置位于/etc/profile文件中(需要root用户,此环境变量对所有的用户都有效)
在.sh脚本文件中添加到最下面一行代码
如果需要增加新的环境变量可以添加下属行 export path=$path:/path1:/path2:/pathN(未测试)
普通用户环境变量设置:(为隐藏文件,只当前用户有效)(没有的话可以自己创建)
/home/heyu/.bash_profile
2.设置变量的三种方法
2.1 在/etc/profile文件中添加变量【对所有用户生效(永久的)】
用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。
例如:编辑/etc/profile文件,添加CLASSPATH变量
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。
2.2 在用户目录下的.bash_profile文件中增加变量【对单一用户生效(永久的)】
用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。
例如:编辑heyu用户目录(/home/heyu)下的.bash_profile
$ vi /home/heyu/.bash.profile
添加如下内容:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件后要想马上生效还要运行$ source /home/heyu/.bash_profile不然只能在下次重进此用户时生效。
2.3 直接运行export命令定义变量【只对当前shell(BASH)有效(临时的)】
在shell的命令行下直接使用[export 变量名=变量值] 定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。
f)常用的环境变量
PATH 决定了shell将到哪些目录中寻找命令或程序
HOME 当前用户主目录
HISTSIZE 历史记录数
LOGNAME 当前用户的登录名
HOSTNAME 指主机的名称
SHELL 当前用户Shell类型
LANGUGE  语言相关的环境变量,多语言可以修改此环境变量
PS1 基本提示符,对于root用户是#,对于普通用户是$


查找命令:
find命令(单双引号都可以)
find . -name ‘.conf’ > result.txt 在当前目录和其子目录下插在.conf 然后将结果输出到result.txt文件中
find ~ -name ‘*.conf’ > result.txt 在当前用户目录和其子目录下。。
find / -name ‘*.conf’ > result.txt 在根目录下…


kill 命令:
kill pid
kill当前用户所有的进程,包括连接(信号9表示彻底杀死) kill -9 -1


xargs命令用法:
把前面命令的结果作为后面命令的参数。
ps -elf | grep chenbaihu | awk ‘{print $4}’ | xargs kill -9
cat /home/heyu/apache/logs/httpd.pid | xargs kill -9`


修改权限
chmod -R 777 /home/heyu


查看系统位数
arch 查看linux系统是多少位的


创建文件或文件夹
创建新文件 touch heyu.txt
创建目录(可以是多级目录) mkdir -p heyu/heyu2/heyu3


查看命令:
cat /home/heyu/test.txt
cat -n /home/heyu/test.txt 显示文件的内容把行号也显示(-b是只显示飞空白行的行号)


文件的复制:
cp -rf sourceDir targetDir
cp -r sourceDir targetDir (循环拷贝文件夹)
cp -i filename targetDir (拷贝文件到文件夹,-i如果文件夹下有同名文件会询问是否覆盖)
安装软件前最好先阅读安装说明:
一般名为install 或者 readme的文件 一般在项目主页或源码主目录中


在linux系统下alias别名的用法:
alias 别名的用途:
快捷启动apache,然后输入alias apache=’/usr/local/apache/bin/apachectl’
以后只要输入apache start|stop|restart命令就可以控制apache的启动和关闭了。


命令汇总


1.root用户 reboot命令重启linux系统

2.超级用户才有效
shutdown -r +10 十分钟后关机重启
shutdown -h now 马上关机不重新启动
shutdown -c 取消一个已经运行的shutdown

3.查看命令:
ls查看文件
ls -a 查看所有文件(包括隐藏文件)
ll ls -l的简写 查看文件的文件的详情(长格式显示文件内容)
ll filename ( 列出文件名为filename的文件详情)

4.cd命令
cd ~ 直接进入用户目录 直接写cd回车也行
cd / 直接进入根目录
cd - 返回上一次的工作目录
任意路径下写绝对路径可以直接进入该目录 : cd /home/heyu

5.文件操作目录(路径都可以写绝对路径)
创建Dir : mkdir dirname
删除文件/目录: rm filename rm -rf dirname(递归删除文件夹)
文件的复制: cp -r sourceDir targetDir (循环拷贝文件夹)
cp -i filename targetDir (拷贝文件到文件夹,-i如果文件夹下有同名文件会询问是否覆盖)
rm 指令中参数
-i 删除时,会询问是否删除
-r 连同目录和目录下所有的文件都删除
-f 不经确认强制删除
mv指令:
常用(用来重命名): mv source.txt target.txt
移动文件夹到文件夹 mv sourceDir targetDir
移动文件到文件夹 mv source.txt targeDir
cat 命令
cat text 显示text文件的内容 如果文本很长 可以用 more file命令,然后按回车可以查看下面的内容
cat file1 file2>file3 把file1,file2的内容结合起来再重定向到file3文件中
wc 命令(word count) 统计字节数、字数、行数,并将统计结果显示输出。
用前用 man wc 命令看下参数
wc -c 统计字节数。
wc -w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
wc -l 统计行数。

6.linux系统管理
新建用户: useradd 用户名 -g 组名 -G组名 -d Home录名 -p 密码
例如: useradd oracle -g oinstall –G dba -d /home/oracle -p ora123
系统将创建一个用户 oracle oracle 用户的首要组为oinstall 次要组为dba Home目录为/home/oracle 密码为ora123
root模式下
添加用户: useradd yves
用户设置密码: passwd yves然后设置密码.
删除用户:
userdel 用户名
创建新的用户组:
groupadd 组名
删除已经存在的用户组:
groupdel 组名
修改用户的密码:
passwd 用户名(然后按提示操作)
修改身份:(切换登录的用户)
su - 用户名

7.修改文件的权限: rwx : 读写执行
chmod 命令:
一种是包含字母和操作符表达式的文字设定法,另一种是包含数字的数字设定法
a)字母表达法: chmod [who] [+ | - | =] [mode] 文件名
u 表示用户(user) 即文件或目录的所有者
g 表示同组(group)用户即与文件属主有相同组ID 的所有用户
o 表示其他(others)用户
a 表示所有(all)用户它是系统默认值
chmod +x dir/file 为文件夹/file增加执行的权限
chmod u=rwx,g=r,o= filename (注意,后无空格o=后有空格)
chown命令:
用于更改某个文件或目录的属主和属组
chown [用户:组] 文件
chown heyu:heyuGroup filename 该命令将 filename文件的属主和属组分别改为heyu和heyuGroup
8.进程及任务管理命令
ps 命令:查看正在运行的进程 和 运行状态
(常用)ps –ef|grep heyu 只显示包含heyu的输出行,查询用户为heyu的所有的进程
常用参数:
-e 显示所有进程
-f 全格式
-l 长格式
UID(执行进程用户ID) PID(进程ID) PPID(父进程ID) STIME(进程启动时间) TTY(终端名称) TIME(进程执行时间) CMD(该进程的命令行输入)
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jan14 ? 00:00:05 init
root 2 1 0 Jan14 ? 00:00:00 [keventd]
root 3 1 0 Jan14 ? 00:00:00 [kapmd]

top 命令:    <空格> 立即刷新显示    h 或者? 显示帮助画面给出一些简短的命令总结说明    m 切换显示内存信息    //没用t 切换显示进程和CPU状态信息    c 切换显示命令名称和完整命令行    M 根据驻留内存大小进行排序    // 没用P 根据CPU使用百分比大小进行排序    q 退出kill 命令:    kill pid    杀死指定用户的所有进程:    kill -9 $(ps -ef | grep heyu)     或者    kill -u heyu         kill -9 -1  终止你拥有的全部进程(连接也自动关闭)。    kill 0来终止所有由当前shell启动的进程    kil 信号 pid   eg:无条件终止进程: kill -9 pidkillall 命令:    killall[参数][进程名]    killall vim   删除进程名为vim的所有进程    killall -9 bash  把所有的登录后的shell给杀掉cron 命令:    cron 命令用来实现定时任务的完成,如每日执行一次的任务。(进程)    crontab –l 命令查看目前已经存在的cron 任务

9.磁盘及文件系统管理命令
df 命令: df命令可以显示目前磁盘剩余的磁盘空间常用的参数为-k
df -k
mount和umount命令:
mount [选项] 设备目录

    其中 最常用的选项是    - a 把/etc/fstab 文件中列出的文件系统都挂装上    挂装软驱和光驱的命令比较简单 直接输入以下命令即可    mount /mnt/cdrom    mount /mnt/floppy    umount 命令用于卸载一个文件系统命令的格式如下    umount [ -f ] directory    其中 directory 是准备卸载的目录名    umount 命令有一个不足之处如果文件系统正在使用中也就是说有人在那    个分区上打开了文件就无法把这个文件系统卸载下来这时可以使用和- f    参数强制执行卸载操作当然这种操作可能会造成用户数据的丢失如    umount -f /mnt/cdrom    该命令将强制卸载挂装在/mnt/cdrom 目录下的文件系统

10.软件安装命令:(注意不管是解压还是压缩参数f都不能省 f为指定文件的名称(指定要压缩的文件/要解压的文件名称))
要执行的操作(c创建,x解压,t查看),文件类型的参数(z gz包,j bz2包,无 tar包),指定要操作的文件(f)
tar 命令:
f: 代表指定文件的名称 x:代表分解档案文件的内容 c:代表创建一个新的档案文件 C:代表指定解压的路径 (change to a directory)
z:支持gz包的解压文件 j:支持bz2的解压文件 v:显示操作过程
理解记忆: c: create f: file v: view t:list (列出) 可以查看帮助 man tar

    打包: tar -cfv name.tar source        解压: tar -xfv name.tar -C /home/heyu    gz包        打包: tar -czfv name.tar.gz source        解压: tar -xzfv name.tar.gz -C /home/heyu    bz2包        打包:  tar -cjfv name.tar.bz2 source        解压: tar -xjfv name.tar.bz2 -C /home/heyu        不解压只是查看压缩文件里面的内容:   t:显示压缩文件的内容        tar -tzvf name.tar.gz        tar -tjvf name.tar.bz2        tar -tvf name.tar        通用: tar -tf 压缩文件rpm 命令:    安装:           rmp -i tomcat4.rpm    升级:          rpm -U tomcat4.rpm    查看:        rpm -qa     列出全部已经安装的软件包        rpm -qf filename    找出filename是属于哪个rpm包里面的        rpm -qi packagename   查出该包(已经安装的软件包)的功能    删除:        rpm -e packagename      package是要删除的软件包的名称 zip 命令:    -r  递归     -d  指定解压目录    将一个文件夹(或文件)压缩        zip -r zip.zip testDir/testfile    将一个文件解压到指定的目录               unzip name.zip -d /home/heyu    只查看zip里面的内容不解压:        upzip -v name.zip 

1.linux系统中的链接
链接分为:软链接和硬链接
链接前面的文件符号参数为l 后面会有链接路径 file > sourcefile
查看硬链接是可以使用命令“ls -l”,返回结果的第二列为硬链接数。
可以看到file1和file3的硬链接数都大于1,为硬链接。

值得注意的是,硬链接和源文件是无法区分的,两个文件具有相同的大小、创建时间等信息。ln -s abc 连接名      建立abc 的软连接   (s 为soft )ln abc 连接名         建立abc的硬连接,

2.linux系统中的环境变量
a)显示环境变量HOME
echo $HOME 显示结果 /home/heyu
b)设置一个新的环境变量
export HELLO=”Hello”
echo &HELLO 查看刚才的坏境变量

    将已有的环境变量设置为只读  readonly HELLO  只读的环境变量不能删除,也不能被修改c)env   显示所有的环境变量    env | grep JAVA_HOME  查看jdk路径d)删除环境变量    unset $环境变量名e)系统环境变量的设置位于/etc/profile文件中(需要root用户,此环境变量对所有的用户都有效)    在.sh脚本文件中添加到最下面一行代码    如果需要增加新的环境变量可以添加下属行   export path=$path:/path1:/path2:/pathN(未测试)    普通用户环境变量设置:(为隐藏文件,只当前用户有效)(没有的话可以自己创建)        /home/heyu/.bash_profile2.设置变量的三种方法2.1 在/etc/profile文件中添加变量【对所有用户生效(永久的)】用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。例如:编辑/etc/profile文件,添加CLASSPATH变量# vi /etc/profileexport CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。2.2 在用户目录下的.bash_profile文件中增加变量【对单一用户生效(永久的)】用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。例如:编辑heyu用户目录(/home/guok)下的.bash_profile$ vi /home/heyu/.bash.profile添加如下内容:export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib注:修改文件后要想马上生效还要运行$ source /home/heyu/.bash_profile不然只能在下次重进此用户时生效。2.3 直接运行export命令定义变量【只对当前shell(BASH)有效(临时的)】在shell的命令行下直接使用[export 变量名=变量值] 定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。f)常用的环境变量PATH 决定了shell将到哪些目录中寻找命令或程序HOME 当前用户主目录HISTSIZE 历史记录数LOGNAME 当前用户的登录名HOSTNAME 指主机的名称SHELL 当前用户Shell类型LANGUGE  语言相关的环境变量,多语言可以修改此环境变量PS1 基本提示符,对于root用户是#,对于普通用户是$  

3.cat命令:
cat命令的原义为连接(concatenate),用于连接多个文件内容并输出到标准输出流中(默认为屏幕)
eg: cat file1.txt file2.txt
常用作查看
cat file.txt
cat -n file.txt 显示文本内容的同时显示行号

4.vi命令
vi没有菜单,只有命令。有三种工作模式: 命令模式,文本输入模式和末行模式。
i插入
:q 直接退出。
:wq 保存后退出
:x 跟“wq”相同
:q 不保存内容,强退。
:set number/nu 设置显示行号
:set nonumber/nonu 取消显示行号
vi 编辑文件时候:
:/要查找的内容
:?要查找的内容 (?和/只是查找的方向不同 /为向下查找?为向上查找)
在查找的过程中 n下一个 N上一个出现匹配的结果
文本的替换:
:s/text1/text2 用于将光标所在段落搜索到的第一个“text1”替换为“text2”
:s/text1/text2/g 用于将光标所在段落的所有“text”替换为“text2”

:n   光标移动到底n行:$   光标移动到最后一行     只按0   光标移到行首  只按$  光标移到行尾x删除光标下的文本dd 删除一行  或者  shift + dyy 复制一行  复制了p为粘贴u 撤销操作 一直可以还原到最初的状态ctrl + r 撤销u的操作.    重复上一次操作shift  + r替换vi功能总结:     增:  i    删: 字符级别x   行级别dd    改:  shift + r    查( 精确查找区分大小写): :/  (向下查找) :?(向上查找)    移: 行首,行尾, 首行,末行(行的移动级别大就复杂些)    撤:  撤销操作  u   ctrl+ r 撤销u的操作.    设:  设置显示行号  set number

5.文件查看命令总结:
cat 查看文件
more 查看长文件 可以翻页
head 查看文件的前10行
tail 查看文件的后10行
tail -f example.log 显示文件example.log的后十行,并在文件内容增加后,自动显示新郑的文件内容。 (监控日志)

文件查看命令总结2:

cat 一次性显示完文件内容,不能交互.    cat -n /home/yves/test.txt显示文件的内容把行号也显示(-b是只显示非空白行的行号)more 查看长文件 可以翻页    more example.log    (空格space)就往下一页显示,    (字母b back) 键就会往回一页显示    类似cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。less 命令  (可以取代vi命令)    ps -ef | less 分页显示进程    less example.log    操作导航:    j - 向前移动一行    k - 向后移动一行    G - 移动到最后一行    g - 移动到第一行    /字符串 是查找功能    q / ZZ - 退出 less 命令 (Control +c 不能退出)head 查看文件的前10行(用法与tail类似)tail 查看文件的后10行(默认查看10行)    tail -20 example.log 显示查看最后20行数据.    tail -f example.log 显示文件example.log的后十行,并在文件内容增加后,自动显示新郑 的文件内容。 (监控日志)

1.网络配置命令:
ifconfig 命令: 查看网卡,Ip,掩码等
ifconfig -a 查看所有网卡的状态
ifconfig -s 查看统计信息
查看第一块网卡的状态:
ifconfig eth0
设置网卡eth0的ip的地址:
ifconfig eth0 192.168.0.1
暂时关闭和启用网卡eth0:
ifconfig eth0 down
ifconfig eth0 up
设置网卡eth0的子网掩码:
ifconfig eth0 netmask 255.255.25.0
*同时设置IP和子网掩码:
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
ifconfig 查看所有的网卡信息
UP/DOWN :网卡是否启动了,down为关闭状态。
RX packets 中的errors包如果数量过大说明网卡在接收时有问题。
TX packets 中的errors包的数量过大,说明网卡在发送时有问题。

route 命令:   查看管理路由表,设定静态路由表项

3.性能分析工具。top 命令 (类似于windows的任务管理器)
0.3% us 用户空间占用CPU百分比
1.0% sy 内核空间占用CPU百分比
98.7% id 空闲CPU百分比

网络操作命令
netstat nslookup host finger ping (在linux下按 nets 按提示键即可)
netstat nltup | grep httpd

1.netstat命令 显示网络连接,路由表和网络接口信息,显示有哪些网络连接正在运作
netstat -a 显示所有socket包括正在监听的
netstat -c 每隔1秒重新显示一遍
netstat -i 显示所有网络接口的信息格式同“ifconfig -e”
netstat -n 以网络IP地址代替名称显示网络连接情形
netstat -r 显示核心路由表格式同“rout -e”
netstat -t 显示TCP协议的连接情况
netstat -u 显示UDP协议的连接情况
netstat -v 显示正在进行的工作

常用: netstat -nap pid号

2.nslookup 命令 (未实现) 查询一台机器的Ip地址和其对应的域名。(简单讲就是查看域名)
(它通常需要一台域名服务器来提供域名服务。如果用户已经设置好域名服务器,可以用这个命令查看不同主机的Ip地址对应的域名)
格式: nslookup [IP 地址/ 域名]

3.host 命令 (未实现)
a)根据主机名 查询ip地址
b)根据ip地址 查询主机名
c)根据域名 查询

host -a  显示所查域名或Ip地址,域名或主机名的相关信息eg: host www.baidu.com

4.finger命令 (未实现) 查询用户信息(用户的用户名,主目录,停滞时间,登录时间,登录的shell信息)
电脑中如果没有还要用yum命令来装
finger [使用者] [用户名@主机]
finger heyu
如何查看远程机器上的用户信息?

5ping 命令 查询网络上的主机是否在工作
ping 主机名/IP地址
eg: ping www.baidu.com

6常用网络配置文件介绍

系统管理命令
1.date命令:
date 输入linux系统时间
date -s 11/12/2016 设置时间为11月12日 2016年
date -s 12:34:56 设置时间为12点34分56秒(root用户可以设置该时间)


总结:

windows 命令:
ps -ef | grep NodeDaemon 查看出该进程的id号
根据id号来找该进程的端口号

netstate -nap id号

判断某个连接的  某个端口是否可以连接:
telnet ip port
eg:
telnet 192.168.0.181 8888

关于性能的命令:
free -h 查看内存内容
df -h 查看硬盘使用情况
top 查看cpu使用情况

原创粉丝点击