作为程序员一定要保持良好的睡眠,才能好编程

linux常用命令

发布时间:2020-05-02


cp  拷贝命令


cp file1 file2   拷贝文件file1并命名file2

cp -r ./a/* ./b/ 把文件a夹下的文件都拷贝到b文件夹下
.复制文件,只有源文件较目的文件的修改时间新时,才复制文件
     cp -u -v file1 file2

    .将文件file1复制成文件file2
     cp file1 file2

    .采用交互方式将文件file1复制成文件file2
     cp -i file1 file2

    .将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式
     cp -f file1 file2

    .将目录dir1复制成目录dir2
     cp -R file1 file2

    .同时将文件file1、file2、file3与目录dir1复制到dir2
   cp -R file1 file2 file3 dir1 dir2

    .复制时保留文件属性
     cp -p a.txt tmp/

    .复制时保留文件的目录结构
     cp -P  /var/tmp/a.txt  ./temp/

    .复制时产生备份文件
     cp -b a.txt tmp/

    .复制时产生备份文件,尾标 ~1~格式
     cp -b -V t   a.txt /tmp   
 


    

命令名 unzip

功 能说明:解压缩zip文 件

语  法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密 码>][.zip文 件][文件][-d <目录>][-x <文件>] unzip [-Z]

补充说明:unzip.zip压缩文件的解压缩程序。

参  数:

-c   将 解压缩的结果显示到屏幕上,并对字符做适当的转换。

-f   更新现有的文件。

-l   显 示压缩文件内所包含的文件。

-p   -c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任 何的转换。

-t   检 查压缩文件是否正确。,但不解压。

-u   -f参数类似,但是除了更新现有的文件外,也会将压缩文件中 的其他文件解压缩到目录中。

-v   执 行是时显示详细的信息。或查看压缩文件目录,但不解压。

-n   解 压缩时不要覆盖原有的文件。

-o   不 必先询问用户,unzip执 行后覆盖原有文件。

-P<密码>   使 用zip的密码选项。

-V   保 留VMS的文件版本信 息。

-X   解 压缩时同时回存文件原来的UID/GID

[.zip文件]   指定.zip压缩文件。

[文件]   指定 要处理.zip压缩文 件中的哪些文件。

-d<目录>   指 定文件解压缩后所要存储的目录。

-x<文件>   指 定不要处理.zip压 缩文件中的哪些文件。

 


命令:zip

参  数:

-c   替 每个被压缩的文件加上注释。

-d   从 压缩文件内删除指定的文件。

-D   压 缩文件内不建立目录名称。

-L   显 示版权信息。

-m   将 文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。

-n<字尾字符串>   不 压缩具有特定字尾字符串的文件。

-o   以 压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。

-q   不显 示指令执行过程。

-r   递 归处理,将指定目录下的所有文件和子目录一并处理。

-S   包 含系统和隐藏文件。

-t<日期时间>   把 压缩文件的日期设成指定的日期。

-u   更 换较新的文件到压缩文件内。

-v   显 示指令执行过程或显示版本信息。



压缩当前目录下的  action  model view 这三个文件夹,存放在amv.zip 文件中

zip -r ./amv.zip ./action ./model ./view




Linux系统查看所有服务的命令
--------------------------------------------------------------------------------
##查看服务在每个级别的运行状态
# chkconfig --list
# chkconfig --list httpd
# chkconfig --list |grep httpd

举例:手工启停服务(看帮助文件)
# service httpd start
# service httpd restart
# service httpd stop

在 /etc/init.d 目录下存储着 服务器程序

service --status-all 可以检查服务的状态,相当于对每个服务运行了 service xxxx status 命令

每个服务至少应该支持start, stop 选项



服务配置:
#让httpd 在机器启动的时候在运行级别上启动
# chkconfig --level 345 httpd on

--------------------------------------------------------------------------------
linux如何查看磁盘剩余空间
--------------------------------------------------------------------------------

# df -h

# df -ih

df 是来自于coreutils 软件包, 查看磁盘空间,查看磁盘inode 使用状况
# du -s
# du /home --max-depth=2


du -sh /home --max-depth=1


du 统计各目录,文件所占磁盘空间

--------------------------------------------------------------------------------
linux 查看系统信息
--------------------------------------------------------------------------------
# top                         # 查看谁最占用cpu, 谁最占用资源等
# uname -a                   # 查看内核/操作系统/CPU信息
# cat /etc/issue             # 查看操作系统版本
# cat /proc/version          # 查看内核
# cat /proc/cpuinfo          # 查看CPU信息
# cat /proc/meminfo          # 查看内存信息
# free -m                    # 查看内存使用量和交换区使用量
# hostname                   # 查看计算机名
# lspci -tv                  # 列出所有PCI设备
# lsusb -tv                  # 列出所有USB设备
# lsmod                      # 列出加载的内核模块
# env                        # 查看环境变量资源
# df -h                      # 查看各分区使用情况
# dmesg                      # 查看内核信息
# uptime                     # cpu 运行时间
# chkconfig --list           # 查看服务
# whoami who w               # 查看登陆的终端名称
# rpm -qa                    # 查看所有安装包
# rpm -qf                    # 查看文件属于哪个包
# rpm -ql <package-name>     # 查询一个已安装软件包里所包含的文件
# rpm -qc <package-name>     # 查看一个已安装软件包的配置文件位置
# rpm -qi <package-name>     # 查询一个已安装软件包的描述信息
# rpm -qd <package-name>     # 查看一个已安装软件包的文档安装位置
# ps -ef                     # 查看进程信息
# ps -aux                    # 查看进程信息

--------------------------------------------------------------------------------
查看谁打开了文件或端口, 相关的进程信息
--------------------------------------------------------------------------------
lsof  filename 显示打开指定文件的所有进程
lsof -c string   显示COMMAND列中包含指定字符的进程所有打开的文件
lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
            46 --> IPv4 or IPv6
            protocol --> TCP or UDP
            hostname --> Internet host name
            hostaddr --> IPv4地址
            service --> /etc/service中的 service name (可以不只一个)
            port --> 端口号 (可以不只一个)
查看22端口现在运行的情况
# lsof -i :22


cat
tail -f

日 志 文 件 说    明
/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
/var/log/secure 与安全相关的日志信息
/var/log/maillog 与邮件相关的日志信息
/var/log/cron 与定时任务相关的日志信息
/var/log/spooler 与UUCP和news设备相关的日志信息
/var/log/boot.log 守护进程启动和停止相关的日志消息


系统:
# uname -a   # 查看内核/操作系统/CPU信息
# cat /etc/issue
# cat /etc/redhat-release # 查看操作系统版本
# cat /proc/cpuinfo  # 查看CPU信息
# hostname   # 查看计算机名
# lspci -tv   # 列出所有PCI设备
# lsusb -tv   # 列出所有USB设备
# lsmod    # 列出加载的内核模块
# env    # 查看环境变量
资源:
# free -m   # 查看内存使用量和交换区使用量
# df -h    # 查看各分区使用情况
# du -sh <目录名>  # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime   # 查看系统运行时间、用户数、负载
# cat /proc/loadavg  # 查看系统负载
磁盘和分区:
# mount | column -t  # 查看挂接的分区状态
# fdisk -l   # 查看所有分区
# swapon -s   # 查看所有交换分区
# hdparm -i /dev/hda  # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE  # 查看启动时IDE设备检测状况
网络:
# ifconfig   # 查看所有网络接口的属性
# iptables -L   # 查看防火墙设置
# route -n   # 查看路由表
# netstat -lntp   # 查看所有监听端口
# netstat -antp   # 查看所有已经建立的连接
# netstat -s   # 查看网络统计信息
进程:
# ps -ef   # 查看所有进程
# top    # 实时显示进程状态(另一篇文章里面有详细的介绍)
用户:
# w    # 查看活动用户
# id <用户名>   # 查看指定用户信息
# last    # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l   # 查看当前用户的计划任务
服务:
# chkconfig –list  # 列出所有系统服务
# chkconfig –list | grep on # 列出所有启动的系统服务
程序:
# rpm -qa   # 查看所有安装的软件包



pidof 查看运行程序的pid

[songyongzhan@syzwork ~]$ pidof nginx

11880 11879 11878 11877 11876 11875 11874 11873 436