Linux 常用命令

Linux 常用命令

  1. nohup和&区别(如何后台运行程序)

nohup

       nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

 

      nohup 是 no hang up 的缩写,就是不挂断的意思。

 

      nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。

 

      在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。 

 

eg:

1. nohup command > myout.file 2>&1 &   

 

在上面的例子中,0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error) ;

 

2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到myout.file文件中

 

2. 0 22 * * * /usr/bin/python /home/pu/download_pdf/download_dfcf_pdf_to_oss.py > /home/pu/download_pdf/download_dfcf_pdf_to_oss.log 2>&1

 

这是放在crontab中的定时任务,晚上22点时候怕这个任务,启动这个python的脚本,并把日志写在download_dfcf_pdf_to_oss.log文件中 

 

nohup和&的区别

& : 指在后台运行

 

nohup : 不挂断的运行,注意并没有后台运行的功能,,就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行

 

&是指在后台运行,但当用户推出(挂起)的时候,命令自动也跟着退出

 

那么,我们可以巧妙的吧他们结合起来用就是

nohup COMMAND &

这样就能使命令永久的在后台执行

 

例如:

 

1. sh test.sh &  

将sh test.sh任务放到后台 ,关闭xshell,对应的任务也跟着停止。

2. nohup sh test.sh  

将sh test.sh任务放到后台,关闭标准输入,终端不再能够接收任何输入(标准输入),重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行。

3. nohup sh test.sh  & 

将sh test.sh任务放到后台,但是依然可以使用标准输入,终端能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行。

————————————————

原文链接:https://blog.csdn.net/qq_18298439/article/details/98756115

 

  1. linux常用命令

 

ls        显示文件或目录

 

     -l           列出文件详细信息l(list)

 

     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)

 

mkdir         创建目录

 

     -p           创建目录,若无父目录,则创建p(parent)

 

cd               切换目录

 

touch          创建空文件

 

echo           创建带有内容的文件。

 

cat              查看文件内容

 

cp                拷贝

 

       复制文件包括其子文件到自定目录 

       cp -r sourceFolder targetFolder

 

mv               移动或重命名

 

rm               删除文件

 

     -r            递归删除,可删除子目录及文件

 

     -f            强制删除

 

      删除文件包括其子文件 

      rm -rf file

 

find              在文件系统中搜索某文件

 

       find / -name filename.txt 

       根据名称查找/目录下的filename.txt文件。

 

wc                统计文本中行数、字数、字符数

 

grep             在文本文件中查找某个字符串

 

rmdir           删除空目录

 

        删除目录(此目录是空目录) 

        rmdir file

 

tree             树形结构显示目录,需要安装tree包

 

pwd              显示当前目录

 

ln                  创建链接文件

 

more、less  分页显示文本文件内容

 

head、tail    显示文件头、尾内容

 

ctrl+alt+F1  命令行全屏模式

 

系统管理命令

 

stat              显示指定文件的详细信息,比ls更详细

 

who               显示在线登陆用户

 

whoami          显示当前操作用户

 

hostname      显示主机名

 

uname           显示系统信息

 

top                动态显示当前耗费资源最多进程信息

 

ps                  显示瞬间进程状态 ps -aux

 

du                  查看目录大小 du -h /home带有单位显示目录信息

 

df                  查看磁盘大小 df -h 带有单位显示磁盘信息

 

ifconfig          查看网络情况

 

ping                测试网络连通

 

netstat          显示网络状态信息

 

man                命令不会用了,找男人  如:man ls

 

clear              清屏

 

alias               对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

 

kill                 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。

 

 

 

打包压缩相关命令

 

tar:                打包压缩

 

     -c              归档文件

 

     -x              压缩文件

 

     -z              gzip压缩文件

 

     -j              bzip2压缩文件

 

     -v              显示压缩或解压缩过程 v(view)

 

     -f              使用档名

 

tar命令

 

  解压:tar zxvf FileName.tar

 

  压缩:tar czvf FileName.tar DirName

 

        列出压缩文件列表 

        tar -tzf test.tar.gz

 

gz命令

 

  解压1:gunzip FileName.gz

 

  解压2:gzip -d FileName.gz

 

  压缩:gzip FileName

 

.tar.gz 和 .tgz

 

  解压:tar zxvf FileName.tar.gz

 

  压缩:tar zcvf FileName.tar.gz DirName

 

   压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...

   

zip命令

 

  解压:unzip FileName.zip

 

  压缩:zip FileName.zip DirName

 

 

 

vim使用

 

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

 

命令模式下:

 

:q                      退出

 

:q!                     强制退出

 

:wq                   保存并退出

 

:set number     显示行号

 

:set nonumber  隐藏行号

 

/apache            在文档中查找apache 按n跳到下一个,shift+n上一个

 

yyp                   复制光标所在行,并粘贴

 

h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

 

文件权限管理

 

三种基本权限

 

R           读         数值表示为4

 

W          写         数值表示为2

 

X           可执行  数值表示为1

 

 

 

-rw-rw-r--一共十个字符,分成四段。

 

第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录

 

第二三四个字符“rw-”表示当前所属用户的权限。   所以用数值表示为4+2=6

 

第五六七个字符“rw-”表示当前所属组的权限。      所以用数值表示为4+2=6

 

第八九十个字符“r--”表示其他用户权限。              所以用数值表示为2

 

修改文件权限 

chmod 777 file.java 

//file.java的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行

 

查看一个程序是否运行 

ps –ef|grep tomcat 

查看所有有关tomcat的进程

 

终止线程 

kill -9 19979 

终止线程号位19979的线程

 

切换用户 

su -username

 

查看文件头10行 

head -n 10 file.txt

 

查看文件尾10行 

tail -n 10 file.txt

 

查看日志文件 

tail -f file.log 

//这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置)。

 

查看实时日志

 

tail -f catalina.out

————————————————

原文链接:https://blog.csdn.net/qq_18298439/article/details/81737116

  1. Scp :不同主机间文件传输

[root@hadoop102 software]#scp jdk-8u144-linux-x64.tar.gz root@192.168.116.142:/opt/software/jdk-8u144-linux-x64.tar.gz

  1. linux 中 export 设置环境变量的注意事项

功能说明:设置或显示环境变量

语法:export [-fnp][变量名称]=[变量设置值]

补充说明:在shell中执行程序时,shell会提供一组环境变量。 export可新增,修改或删除环境变量,供后续执行的程序使用。

export的效力仅及于该此登陆操作。

参数:

-f  代表[变量名称]中为函数名称。

-n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

-p  列出所有的shell赋予程序的环境变量。

一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个

shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。

export命令可以用于传递一个或多个变量的值到任何后继脚本

  1. xshell登录 Linux 慢怎么办

1.登录Linux系统,打开终端,修改文件:/etc/ssh/sshd_config

2.在打开的文件中,找到UseDNS属性,命令/UseDNS
UseDNS yes —>默认为注释行
此时将UseDNS yes修改为UseDNS no,没有的则加上这一行,便可。

3.保存退出,命令:wq
然后systemctl restart sshd重启ssh服务即可

  1. 禁用selinux

[root@tcsd142 ~]# vim  /etc/selinux/config

  1. 修改/etc/sudoers权限 允许root用户执行任意路径下的任意命令

## Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

tcsd    ALL=(ALL)       ALL  (添加的)

1.sudo用途

a.对用户的执行命令权限进行限制;

b.提供了日志记录,可详细记录每个用户具体的操作;

c.临时性的时间戳(一般为5min),在此期间使用sudo命令,不需要再输入密码;

d.配置文件为/etc/sudoers,可以使root对用户集中管理

2.sudo工作原理

a.当用户执行sudo时,系统寻找/etc/sudoers文件,判断该用户是否具备执行sudo的权限;

b.确认用户权限后,让用户输入自身的密码;

c.若密码合法,则开始执行sudo后续的命令;

d.root执行sudo时不需要输入密码,自身切换自身也不需要输入密码.

3.sudo常用参数

# visudo -c  检查/etc/sudoers的语法

/etc/sudoers: parsed OK

$ sudo -l  列出目前用户可执行与无法执行的指令

$ sudo -k  结束密码的有效期限,也就是下次再执行sudo时便需要输入密码

$ sudo -v  延长密码有效期限5分钟

$ sudo -V  显示版本信息

 

 

  1. centos7修改hostname

1.如果存在/etc/hostname文件,读取其内容为localhost。
hostname的配置文件为 /etc/sysconfig/network

hostname为linux系统内核参数,保存在/proc/sys/kernel/hostname

 

2.其值是linux启动时从rc.sysinit读取的。

如果存在/etc/hostname,其内容为localhost,

否则/etc/rc.d/rc.sysinit中HOSTNAME的取值来自于/etc/sysconfig/network下的HOSTNAME。

这样hostname怎么修改就清楚了。

https://blog.csdn.net/qq_36666651/article/details/84984903


//永久性的修改主机名称,重启后能保持修改后的。

hostnamectl set-hostname xxx

 

 

  1. 查看主机名、操作系统环境


Hostnamectl

uname -a //查看到的是瞬态的(Tansient hostname)

cat /etc/redhat-release //查看操作系统环境

 

  1. /etc/hosts文件的作用

Hosts - The static table lookup for host name(主机名查询静态表)

3. 配置文件格式说明

一般/etc/hosts 的内容一般有如下类似内容:

127.0.0.1 localhost.localdomain localhost

192.168.1.100 linmu100.com linmu100

192.168.1.120 ftpserver ftp120

一般情况下hosts文件的每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。

第一部份:网络IP地址;

第二部份:主机名或域名;

第三部份:主机名别名;

当然每行也可以是两部份,即主机IP地址和主机名;比如 192.168.1.100 linmu100。

这里可以稍微解释一下主机名(hostname)和域名(Domain)的区别:主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应ip;域名通常在internet上使用,但如果本机不想使用internet上的域名解析,这时就可以更改hosts文件,加入自己的域名解析。

 

 

  1. 针对centos7防火墙配置

修改防火墙

将firewalld.service切换为iptables

firewall-cmd --state 查看防火墙状态

切换到iptables首先应该关掉默认的firewalld,然后安装iptables服务。

1、关闭firewall:

systemctl stop firewalld.service

systemctl disable firewalld.service #禁止firewall开机启动

2、安装iptables防火墙

yum install iptables-services #安装

service iptables save

3、编辑iptables防火墙配置

vi /etc/sysconfig/iptables #编辑防火墙配置文件

下边是一个完整的配置文件:

在你运行完save中间插入下面的规则

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

:wq! #保存退出

systemctl start iptables.service  #开启

systemctl enable iptables.service #设置防火墙开机启动

 

  1. 附赠防火墙脚本,前提你已经切换至iptables

#!/bin/bash

IPT=`which iptables`

$IPT -F

$IPT -X

$IPT -P INPUT DROP

$IPT -P FORWARD ACCEPT

$IPT -P OUTPUT ACCEPT

$IPT -N syn-flood

##本地回环 内网允许任何

$IPT -A INPUT -i lo -j ACCEPT

$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPT -A INPUT -m state --state NEW -s 10.0.0.0/8 -j ACCEPT

# ssh 端口开放 任何IP

$IPT -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT

# 根据需求填写相应的端口

$IPT -A INPUT -p tcp -m multiport --dports 80,8087,89 -j ACCEPT

# zabbix监控地址

$IPT -A INPUT -p tcp -s zabbix.ip -m state --state NEW -m tcp --dport 10050 -j ACCEPT

# ICMP 规则控制

$IPT -A INPUT -p icmp -m limit --limit 100/sec --limit-burst 100 -j ACCEPT

$IPT -A INPUT -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

# DOS防护

$IPT -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood

$IPT -A INPUT -j REJECT --reject-with icmp-host-prohibited

$IPT -A syn-flood -p tcp -m limit --limit 3/sec --limit-burst 6 -j RETURN

$IPT -A syn-flood -j REJECT --reject-with icmp-port-unreachable

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值