.tar.gz
格式文件
# 解压
$ tar -zxvf /filePath/filename.tar.gz
# 压缩
$ tar -zcvf /filePath/filename.tar.gz /filePath/filename
# 解压到特定文件夹
$ tar -zxvf /filePath/filename.tar.gz -C /filePath/filename
# 压缩到特定文件夹
$ tar -zcvf /filePath/filename.tar.gz -C /filePath/filename
# 压缩所有txt类型文件
$ gzip *.txt
.tar.bz2
格式文件
# 解压
$ tar -jxvf /filePath/filename.taz.bz2
# 压缩
$ tar -jcvf /filePath/filename.tar.bz2 /filePath/filename
.rar
格式文件
需要安装rar工具, 下载对应的linux版本,解压,make
即可。
# 解压
$ rar e /filePath/filename.rar /filePath/filename
# 压缩
$ rar a -m5 /filePath/filename.rar /filePath/filename
.zip
格式文件
需要安装zip和unzip工具
$ sudo dnf install zip
$ sudo dnf install unzip
# 解压
$ unzip filename.zip
# 只打印最简短解压信息,并不解压
$ unzip -tq filename.zip
# 解压其中一个文件
$ unzip filename.zip onefile
# 解压到特定目录
$ unzip filename.zip -d /filePath/filename
# 压缩当前目录
$ zip filename *
# 压缩当前目录包括所有子目录
$ zip -r filename *
gzip
使用方法:
# 保留源文件压缩
$ gzip -c filename > filename.gz
# 保留源文件解压
$ gunzip -c filename.gz > filename
# 创建
$ mkdir
# 删除
$ rm
# 删除整个文件夹
$ rm -rf
# 复制
$ cp
# 复制文件夹
$ cp -r
# 显示
$ ls
# 列表显示文件和相关权限
$ ls -l
# 列表显示文件并按照文件名逆序排列
$ ls -rl
# 显示隐藏文件
$ ls -a
# 可以配合使用
$ ls -al
# 查看文件夹大小
$ ls -lhs
# 查看目录树
$ tree
# 将sh文件赋予可执行权限
$ chomd 777 filename.sh
$ sh /filePath/filename.sh
$ mv oldfile newfile
md5(Message-Digest Algorithm 5)报文摘要,可以用来验证网络文件传输的完整性。
$ md5sum file
Java Control Panel位置/usr/java/jdk1.7.0_45/bin/ControlPanel
# 执行.jar格式文件
$ java -jar filename.jar
# 指定内存运行.jar格式文件
$ java -Xmx2000M -jar filename.jar
# 执行.jnlp格式文件
$ javaws filename.jnlp
# 将文件直接打印在屏幕上
$ cat filename
# 32位还是64位
$ uname -a
# 查询操作系统发行版本
$ sudo lsb_release -a
$ pwd
# 比如查看R的安装位置
$ which R
# 查看某个文件的位置
$ whereis filename
# 比如man R
$ man commandname
# 删除满足条件的数据
$ find ./ -name '*' | xargs rm -rf
# 移动大数据量的文件.
$ find ./ -name "*.gif" | xargs -i mv {} /filePath/
假设我们程序的绝对路径是/opt/arbtest/arb
两种方法:
# export PATH=$PATH:/opt/arbtest
这种方法当前有效,重启之后就失效了。
# 查看修改该好的PATH
$ export
/etc/profile
(系统设置,任何用户都可使用)或者~/.bashrc
(当前用户)文件。
向这两个文件中添加export PATH=$PATH:/opt/arbtest
或者export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/arbtest
。# 载入修改好的文件
# 载入root权限profile
$ sudo source /etc/profile
# 载入当前用户.bashrc文件
$ source ~/.bashrc
# 查看修改好的路径
$ echo $PATH
禁止屏幕输出,即将屏幕输出导入Linux的无底洞 /dev/null
,比如
$ cat myFile > /dev/null
此时,导入的是标准屏幕输出(标号为1)stdout。如果要导入标准错误输出(标号为2)stderr,执行
$ cat myFile 2 > /dev/null
如果将两种输出全部导入/dev/null
,执行
# 最后的"2>$1"表示2的操作等同于1
$ cat myFile > /dev/null 2>$1
使用命令chmod
更改文件权限。
u
:所有者(user)
g
:群组(group)
o
:其他人(others)
a
:所有人(all)
r
:表示可读(read),对应数值4
w
:表示可写(write),对应数值2
x
:表示可执行(excute),对应数值1
-
:表示什么操作都不行,对应数值0
# 比如rw-rw-r--对应664
$ chomd 664 filename
使用命令chown
更改文件所有者:
$ sudo chown -R myOwner:myGroup fileName
# 更新myfile的存取和修改时间;如果myfile不存在,则创建该文件
$ touch filename
CentOS需要手动挂在NTFS分区,下载并安装NTFS-3G,安装方法:
$ cd ./configure
$ make
$ sudo make install
查找NTFS分区路径,此处假定为/dev/sta1
:
# 查看硬盘分区
$ sudo fdisk -l
# 挂载NTFS分区
$ sudo mkdir /mnt/NTFStest
$ sudo mount -t ntfs-3g /dev/sta1 /mnt/NTFStest
# 卸载分区
$ sudo umount /mnt/NTFStest
如果需要自动挂载ntfs分区,首先要查看分区信息,比如uuid
$ sudo blkid
之后修改/etc/fstab
,添加需要挂载的分区
UUID=12D345251F34 /media/D ntfs defaults 0 0
以下命令都可以配合grep
使用
# 安装最快源插件
$ sudo dnf install dnf-plugin-fastestmirror
# 安装并行下载工具
$ sudo dnf install dnf-axelget
# 终止dnf安装
$ sudo rm -f /var/run/yum.pid
# 查询包
$ sudo dnf search pkg
# 重新安装包
$ sudo dnf reinstall pkg
# 升级包
$ sudo dnf update pkg
# 卸载包
$ sudo dnf remove pkg
# 查询已安装包信息
$ sudo dnf info pkg
# 查看仓库包列表
$ sudo dnf list pkg*
# 查看已安装的包
$ sudo dnf list installed
# 搜索命令
$ sudo dnf whatprovides MyCommand
可以使用多种文本编辑器,最常用的是Emacs和Vim,使用方法直emacs
或者vim
和文件名即可。
# 修改Apache服务器配制文件
$ vim httpd.conf
$ emacs httpd.conf
# 查看用户
$ w
$ who
# 超过500为后建用户
$ cat /etc/passwd
# 新建用户
$ useradd usrname
# 新建用户设置密码
$ passwd usrname newpasswd
# 删除用户
$ userdel -r usrname
# 查看用户登陆
$ last
$ last usrname
# 查看当前任务
$ top
# deb转换为rpm
$ alien -r filename.deb
# rpm转换成deb
$ alien -d filename.rpm
apt
,非常方便,配置方法如下$ sudo dnf install apt
$ sudo apt-get update
$ sudo apt-get pkg
# 查看进程树
$ pstree -p
# 看全部进程
$ ps -A
# 强制终止进程
$ kill -9 7473
# 释放内存
$ free -m
$ netstat -lntp
nohup
命令$ nohup /filepath/testScript.py
/etc/ssh/sshd_config
,找到ServerAliveInterval
语句,将其注释去掉,改为ServerAliveInterval 60
两步操作。首先,ssh-keygen -t rsa
生成密钥和公钥。之后,ssh-copy-id usrname@remote-server
上传公钥。
$ locate libGLU.so
# 安装rpm包
$ sudo rpm -ivh pkg.rpm
# 更新rpm包
$ sudo rpm -Uvh pkg.rpm
# 查看已经安装的包
$ sudo rpm -qa | grep pkg.rpm
# 卸载rpm包
$ sudo rpm -e pkg
# 查询CPU信息
$ lscpu
# 物理CPU个数
$ grep 'physical id' /proc/cpuinfo | sort -u | wc -l
# 核心个数
$ grep 'core id' /proc/cpuinfo | sort -u | wc -l
# 线程个数
$ grep 'processor' /proc/cpuinfo | sort -u | wc -l
$ nproc
查看CPU温度
# 安装lm_sensors工具
$ sudo dnf install lm_sensors
$ sensors
$ du -h myfile
$ du -h filepath
# 查看内存使用情况
$ free
# 物理内存
# dmidecode -t memory | grep Size
# 头部
$ head -5 file
# 尾部
$ tail -7 file
$ wget -c -t 0 -w 30 httplink
-c
:表示接着下载没下载的文件
-t
:表示尝试连接次数
0
:表示不停尝试
-w
:表示每两次尝试的时间间隔
$ axel -n 8 -a -S5 httplink -o folder
-n
:设定下载线程数
-a
:简单进度条
-S5
:搜索filesearching.com镜像,以加快下载速度
-o
:储存目录
# 开机启动httpd
$ sudo chkconfig httpd on
# 关闭httpd
$ sudo chkconfig httpd off
# 开启启动列表
$ sudo chkconfig --list
# cat /var/log/messages
# 获取文件时间
$ stat filename | grep Modify | awk '{print $2, $3}
# 获取当前时间
$ date
$ date -d '-1 day'
$ date -d '+1 hour'
$ date -d yesterday '+%F %T'
$ date -d tomorrow +%s
# 获取本月日历
$ cal
使用cron,首先开启:
# 开启
$ sudo service crond start
# 重启
$ sudo service crond restart
建立描述文件,比如testCron
# 每半个小时执行command
0,30 * * * * commmand
提交
# 提交
$ crontab testCron
# 查看
$ crontab -l
# 删除
$ crontab -r
# 编辑
$ crontab -e
# 确定添加硬盘,比如/dev/sda
$ sudo fdisk -l
使用parted
分区
$ sudo parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
Warning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be
lost. Do you want to continue?
Yes/No? yes
(parted)
Partition
File system type? [ext2]?
Start?
End?
(parted)
Model: ATA WDC WD4005FZBX-0 (scsi)
Disk /dev/sda: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 4001GB 4001GB ext4
(parted)
Information: You may need to update /etc/fstab.
格式化硬盘
$ sudo mkfs.ext4 /dev/sda1
查看硬盘供应商信息
$ sudo lshw -C disk
使用cpanm
安装Perl模块。
$ sudo dnf install cpanm
$ sudo cpanm My::Module
$ rsync -rlptDP testFolder romateMachine:/home/test
## 保持文件group和owner
## -a相当于-rlptgoD
$ rsync -aP testFolder romateMachine:/home/test
2019年04月03日