linux常用命令记录

1:查找含有123的文件列表

    grep -l  123 *

    grep 123 * 同时显示内容

    通过grep保留5行,查询文件关键字且保留上下5行

    cat a.log | grep -C 5 temp

2:批量dos转unix

    1:安装dos2unix

    yum install -y dos2unix

    2:转换

    find ./ -type f | xargs dos2unix

3:*.patch补丁文件使用方法

    生成patch

    git diff > file.patch

    打补丁

    patch -p1 < file.patch

    git apply file.patch

查看各文件夹大小:du -h --max-depth=1

// GIT全局配置

git config--globalcredential.helper store

检查:cat ~/.gitconfig

拆分文件和合并文件

split 文件分割

-b: 选项后跟期望切割后的单个文件的大小,单位k或者m

eg. split -b 1024m test.txt //将test.txt按照每1024m切割为一个小文件

-l: 选项后跟期望切割后单个文件的行数,直接写数字

eg. split -l 1000 test.txt //将test.txt按照每1000行切割为一个小文件

-C: 与选项-b相似,但是在切割时将尽量维持每行的完整性

-d: 使用数字作为后缀

-a: 配合选项-d,指定后缀长度

如:split -b 10m node1.tar -a 2 -d aaa

会生成aaa01,aaa02,aaa03....

合并文件如下:

cat aaa* > node2.tar


按照名称杀掉进程

ps -efww| grep 53_13933 |grep -v grep|cut -c 9-15|xargs kill -9

查看linux系统版本系信息

    lsb_release -a

    找不到则安装sudo apt-get install lsb-core -y

    cat /etc/redhat-release,这种方法只适合Redhat系的Linux

    cat /etc/issue,此命令也适用于所有的Linux发行版

ll找不到问题

    #vim ~/ .bashrc 

    添加: alias ll = 'ls -l'

    #source ~/.bashrc 

缺少ps命令

    apt-get/yum -y install procps

缺少pstree命令

    apt-get/yum -y install psmisc

linux查看静态库中符号表

    nm [option(s)] [file(s)]

    有用的options:

        -A 在每个符号信息的前面打印所在对象文件名称;

        -C 输出demangle过了的符号名称;

        -D 打印动态符号;

        -l 使用对象文件中的调试信息打印出所在源文件及行号;

        -n 按照地址/符号值来排序;

        -u 打印出那些未定义的符号;

vmware增加共享文件夹给centos

    1:vmware设置启动共享文件夹,并配置任意共享目录,例如

    2:接着进入vmware下的命令行,用管理员配置如下命令

        mkdir /mnt/win

        /usr/bin/vmhgfs-fuse .host:/ /mnt/win -o subtype=vmhgfs-fuse,allow_other

centos命令:

    打开防火墙的端口3000

    firewall-cmd --zone=public --add-port=3000/tcp --permanent #添加特定端口

    firewall-cmd --zone=public --add-port=900~1000/udp --permanent #添加范围端口

    firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口

    firewall-cmd --reload # 配置立即生效,配置后需要执行

    关闭防火墙

    1) 永久性生效,重启后不会复原

    开启: chkconfig iptables on

    关闭: chkconfig iptables off

    2) 即时生效,重启后复原

    开启: service iptables start

    关闭: service iptables stop

    查看开放端口

    firewall-cmd --zone=public --list-ports

tar命令

    .tar只是进行打包,并没有压缩。 可用tar-cvf进行打包,用tar-xvf进行解包。 

    .tar.gz是既打包又压缩 。tar –czvf [压缩包名] [文件或目录]打包并且压缩,tar –xzvf [压缩包名]解包并且压缩。注意:-z表示bzip的操作! 

    tar -zcvf test.tar.gz ./test/  #压缩

    tar -xzvf test.tar.gz      #解压缩

centos安装nodejs8.x版本以上方法:

    wget https://nodejs.org/dist/v8.6.0/node-v8.6.0-linux-x64.tar.xz

    sudo xz -d node-v8.6.0-linux-x64.tar.xz

    sudo tar xvf node-v8.6.0-linux-x64.tar

    sudo mv node-v8.6.0-linux-x64 node

    sudo cp -R node /usr/local

    sudo vi /etc/profile

    在末尾添加

    export NODE_HOME=/usr/local/node

    export PATH=$NODE_HOME/bin:$PATH

    export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH

    执行如下

    source /etc/profile

永久添加环境变量

    #打开文件

    vim ~/.bashrc

    #在文件末尾加上

    export PATH=$PATH:/.../...   

    export ENV_NAME=12345678

    #使设置生效

    source ~/.bashrc

查找本机IP并赋值

    PRIVATE_IP=$(ifconfig|awk'/inet addr/{print substr($2,6)}'|grep -v 127.0.0.1)

查看端口所使用的进程号

    netstat -nap | grep 9229

通过端口号查看占用的进程

    ps -ef|grep $(netstat -anp|grep 8080|awk '{printf $7}'|cut -d/ -f1)

查看当前目录下,日期前一天的log后缀的文件

find . -type f -name '*.log' -mtime +0 -exec ls -l {} \;

删除

find . -type f -name '*.log' -mtime +0 -exec rm -rf {} \;

其余命令

# uname -a # 查看内核/操作系统/CPU信息 

# head -n 1 /etc/issue # 查看操作系统版本 

# 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 # 查看所有安装的软件包

文件内容替换

sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`

带'/'类的使用下面语句

sed -i "s#/kaggle/input#~/File/hyh/data#g" `grep -rl /kaggle/input ./`

cat /proc/cpuinfo | grep'physical id'| sort | uniq | wc -l

查看CPU个数

cat /proc/cpuinfo | grep'process'| sort | uniq | wc -l

查看总核数

cat /proc/meminfo

查看内存

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容