linux常用命令随记

这些命令平时都是记录在自己电脑的记事本上的,最近没事写点文章记录一下,也给需要的同学做下参考,这些应该都是比较常用到的,因为都是我平时搭建服务器时候,会查询用到的命令,自己做记录的,肯定是比较有用的咯:

1、自启动配置信息:

把配置信息写成.sh的配置文件,放置到:

/etc/profile.d/ 目录下即可自动生效;

source /etc/profile

2、查看系统版本:

uname -r

3、查看系统信息:

cat /etc/os-release

4、清空当前中的屏幕内容:

clear

5、更新yum软件包索引:

yum makecache fast

6、查找文件(例如:从根目录下查找 tomcat 名称相关):

find / -name *tomcat*

7、后台运行脚本:

commond &>/dev/null &

付:Mac OSX 下解决Address already in use 端口占用问题:

第一步:在终端输入 sudo lsof -i:6790 这个就是被占用的端口;

第二步:sudo kill -9 11722 我这是一个Java应用 kill 对应的pid就好了

8、解压文件:

tar -zxvf Python-3.6.1.tgz

tar xzf redis-6.0.8.tar.gz

tar -Jxvf Python-3.5.2.tar.xz

9、拷贝文件(拷贝目录,带强制覆盖):

cp -rf ${WORKSPACE}/uniapp/dist/build/app-plus/*  ${WORKSPACE}/app/src/main/assets/apps/${UNI_APP_ID}/www/

10、Linux expect

expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。

expect自动交互流程:

spawn启动指定进程---expect获取指定关键字---send向指定程序发送指定字符---执行完成退出

yum install -y expect

#### for example:

#!/usr/bin/expect

spawn ssh saneri@192.168.56.103 df -Th

expect "*password"

send "123456\n"

expect eof

11、远程复制文件:

# 示例1
scp -P 4011 /usr/local/download/AndromonTest/Channel/1.0.7/base.apk root@10.240.180.136:/usr/local/BuildOutput/AndromonTest/1.0.7/base.apk

# 示例2
scp ./jdk/jdk-8u201-linux-x64.tar.gz root@101.43.141.76:/root/download/

12、查看linux端口:

netstat -ntlp   //查看当前所有tcp端口

netstat -ntulp | grep 80   //查看所有80端口使用情况

netstat -an | grep 3306   //查看所有3306端口使用情况

—————查看端口占用情况-------------:

lsof -i :5037

lsof -i tcp:5037

lsof -i :12306

13、查看进程:

ps -ef | grep xxxx

14、杀掉进程:

kill -9 9999

15、后台执行程序:

nohup  要执行的程序 &

##  不输出日志

nohup ./program >/dev/null 2>&1 &

#查看后台程序

ps aux | grep kibana  #a:显示所有程序  u:以用户为主的格式来显示   x:显示所有程序,不以终端机来区分

ps -ef | grep kibana  #-e显示所有进程。-f全格式。

#关闭后台程序

kill 1001

kill  -9 1001  #-9表示强制关闭

16、https://www.bt.cn/ 宝塔面板

命令行工具:Termius

17、brew 安装指定版本

例如:

首先:brew search subversion

homebrew/versions/subversion16            

homebrew/versions/subversion18          

homebrew/versions/subversion17

再指定安装:

brew install homebrew/versions/subversion16

删除此版本

brew remove homebrew/versions/subversion16

brew reinstall subversion@1.8

18、yum -y:

如果使用yum install xxxx,会找到安装包之后,询问你Is this OK[y/d/N],需要你手动进行选择。但是如果加上参数-y,就会自动选择y,不需要你再手动选择!

yum -y install 包名(支持*) :自动选择y,全自动

yum install 包名(支持*) :手动选择y or n

yum remove 包名(不支持*)

rpm -ivh 包名(支持*):安装rpm包

rpm -e 包名(不支持*):卸载rpm包

19、建立软连接:

cd /usr/bin

ln -s /usr/local/node/bin/node node

20、创建用户组&新用户:

groupadd groupname  添加用户组

useradd username  创建用户username

passwd user_pwd      给已创建的用户username设置密码

-g 用户组 指定用户所属的用户组。

示例:useradd -g mygroup myuser

userdel username  删除用户username

切换下刚才添加的用户:

su username  查看一下对应的位置 可以进去  没毛病

21、修改密码:

passwd

22、adb占用端口处理(adb默认端口是:5037):

查看占用的端口

输入命令行:adb nodaemon server

查看占用端口的PID

netstat -ano | findstr "5037"

查看全部使用端口:

netstat -ntulp

kill -9 xxxx

adb kill-server结束服务

输入adb start-server成功启动服务

23、安装vim:

yum -y install vim*

处理vim编辑文件时,文件内显示乱码

编辑/etc/vimrc文件,加上如下几行:

set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

set termencoding=utf-8

set encoding=utf-8

保存即可;

24、安装netstat命令:

yum -y install net-tools

25、安装bzip2:

yum search bzip2  //查询安装包

yum -y install bzip2*

26、查看服务器当前时间:

date

date -R 查看时区

27、修改服务器时区:

tzselect

此时时间并没有修改,需要执行TZ='Asia/Shanghai'; export TZ,并将这条命令写入.bash_profile文件

28、shell-if表达式(-f,-d,-s,-r,-w,-x,-eq,-ne,-ge,-gt,-le,-lt )

文件表达式

if [ -f file ] 如果文件存在

if [ -d … ] 如果目录存在

if [ -s file ] 如果文件存在且非空

if [ -r file ] 如果文件存在且可读

if [ -w file ] 如果文件存在且可写

if [ -x file ] 如果文件存在且可执行

整数变量表达式

if [ int1 -eq int2 ] 如果int1等于int2

if [ int1 -ne int2 ] 如果不等于

if [ int1 -ge int2 ] 如果>=

if [ int1 -gt int2 ] 如果>

if [ int1 -le int2 ] 如果<=

if [ int1 -lt int2 ] 如果<

字符串变量表达式

If [ $a = $b ] 如果string1等于string2

字符串允许使用赋值号做等号

if [ $string1 != $string2 ] 如果string1不等于string2

if [ -n $string ] 如果string 非空(非0),返回0(true)

if [ -z $string ] 如果string 为空

if [ $sting ] 如果string 非空,返回0 (和-n类似)

s​h​e​l​l​中​条​件​判​断​i​f​中​的​-​z​到​-​d​的​意​思

[ -a FILE ] 如果 FILE 存在则为真。

[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。

[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。

[ -d FILE ] 如果 FILE 存在且是一个目录则为真。

[ -e FILE ] 如果 FILE 存在则为真。

[ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。

[ -g FILE ] 如果 FILE 存在且已经设置了SGID则为真。

[ -h FILE ] 如果 FILE 存在且是一个符号连接则为真。

[ -k FILE ] 如果 FILE 存在且已经设置了粘制位则为真。

[-p FILE ] 如果 FILE 存在且是一个名字管道(F如果O)则为真。

[ -r FILE ] 如果 FILE 存在且是可读的则为真。

[ -s FILE ] 如果 FILE 存在且大小不为0则为真。

[ -t FD ] 如果文件描述符 FD 打开且指向一个终端则为真。

[ -u FILE ] 如果 FILE 存在且设置了SUID (set user ID)则为真。

[ -w FILE ] 如果 FILE 如果 FILE 存在且是可写的则为真。

[ -x FILE ] 如果 FILE 存在且是可执行的则为真。

[ -O FILE ] 如果 FILE 存在且属有效用户ID则为真。

[ -G FILE ] 如果 FILE 存在且属有效用户组则为真。

[ -L FILE ] 如果 FILE 存在且是一个符号连接则为真。

[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。

[ -S FILE ] 如果 FILE 存在且是一个套接字则为真。

[ FILE1 -nt FILE2 ] 如果 FILE1 has been changed more recently than FILE2,or 如果 FILE1 exists and FILE2 does not则为真。

[ FILE1 -ot FILE2 ] 如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真。

[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。

[ -o OPTIONNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。

[ -z STRING ] “STRING” 的长度为零则为真。

29、mac androidid adb 端口被占用 解决办法

1. 查找5037端口:lsof -i tcp:5037

2. 记住 PID

3. 杀掉被占用的端口:kill 10679

4. adb devices  重启服务

5.  不能只清掉 占用端口  还需要清掉 adb 服务

adb kill-server

adb start-server

30、执行一条命令,并为该命令自动填充输入参数

如下(执行startup.sh命令,并为该命令输入密码:123456,`su - root`命令,是使用root账户执行命令)

echo 123456 | su - root /usr/local/apache-tomcat-8.5.38/bin/startup.sh

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值