博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux&Unix命令
阅读量:6238 次
发布时间:2019-06-22

本文共 6672 字,大约阅读时间需要 22 分钟。

Linux下:

注意点:

        linux系统下内容大多用单引号 alias test='cd ******'

 

 

 

系统操作

安装工具:

      netstat    gcc

       >yum install net-tools

 

>yum install -y gcc texinfo-tex flex zip libgcc.i386 glibc-devel.i386

 

 

添加环境变量:

       >export [PYTHONPATH]=*****  //添加

        >unset [PYTHONPATH]    //移除

       >export      //查看全部

       >echo $JAVA_HOME  // 查看指定

        >export PATH=$PATH':usr/local/tomcat'    //实现拼接

          在命令行输入的环境变量仅对本次会话有效,要使一直有效需要将环境变量加入到文件

          /etc/profile 或者  /etc/profile.d/sh.local

别名:

linux下快速命令 (别名)和设置别名:

  -》alias                        (查看系统中所有设置的别名)

  -》alias  别名='原命令'   (设置别名)

           alias  cdRedis='cd /usr/local/redis5.0.1'   

          当然可用环境变量的形式代替

                   >export redis=/usr/local/redis5.0.1

                   >cd $redis

  -》unalias 别名            (删除别名)

        此处的别名也仅对当前会话有效,如果要一直有效,需要将命令添加到

         /etc/profile.d/sh.local

直接运行:

        命令行随意运行软件,不带路径需要将执行软件cp到 /usr/bin/ 中,才可以。

        >cp /usr/local/redis5.0.1/src/redis-cli  /usr/local/redis5.0.1/src/redis-cli    /usr/bin/

        >redis-cli -p 6379 --raw

查看磁盘使用情况:

  -》df -h [files]     //明细

  -》df -sh [files]    //总和

  -》df -h               //全盘查看

查看cpu和内存:

  -》top

系统名称版本:

        -》uname -a

操作版本:

        -》cat /proc/version

        -》cat /etc/issue

系统目前的内存占用:

        -》free -m

ip查看:

      -》ifconfig  最小化安装时,没有此命令,过时(安装:yum install net-tools)

     -》 ip addr   查看网卡地址和ip

ip自动分配:

    -》  vim /etc/sysconfig/network-scripts/ifcfg-eno16777736

设置:ONBOOT=yes

    重启网络服务:systemctl restart network 或者 service network restart #重启网络

查看系统时间:

  -》 date

       -》 hwclock --show          //查看硬件时间

       -》 hwclock --set --date '2018-11-09  15:15:15'            //系统硬件日期

       -》hwclock  --hctosys                                                   // 同步系统时间

       -》clock -w                                                                   // 保存时钟

 

 

 

文件操作:

查看文件夹下所有文件 :

-》ls

-》ll

-》ll -a   查看所有文件,包括隐藏文件

-》ls -lh   或  -》ll -h  可以看到文件大小以M为单位。

》clear  清屏操作

》~/      用户登录文件夹 /home/root

查看文件 :

  -》tail -f  filename  -n  50  监控后50行文字

       -》tail -f -n 1000 log.log |grep WARN           // grep带过滤查找 warn的信息在查找日志时很有用

  -》head filename   -n  100 查看前100行文字

  -》sed -n '1000,2000p' filename 查看1000-2000行记录

  -》 cat filename  正向显示文件所有内容

  -》 tac filename 反向显示文件所有内容 与cat看文件顺序向反  

替换文件:

  -》sed -i 's/原字符串/替换字符串/g' filename      # 替换文件中的所有匹配项,如果遇到路径,用反斜杠标记,防止被解析

       例:sed -i 's/${usr.home}/\usr\/local\/program\/rocketmq/g' logback_*.xml

搜索文件:

  》find / -name "ld.so.conf"

  》whereis nginx    //查找nginx文件

搜索文件中的内容:

 》grep -rn  error   aaa.log      //r表示递归,n表示显示行数

编辑文件:

        -》vi  [filename]

        此时是command line模式

       按下[i]  进入插入模式,按[esc]回退到command line模式,按[:]进入底行模式

      在底行模式下 wq保存退出 , w [fileothername] 另存为,q!不保存退出。

       -》vim [filename]  

          此时是通过复制一份临时文件操作执行,有时会因其它原因再次打开报上次未关闭 .swap.

         操作 选择 R,然后 D

           rm -rf  .[filename]*

删除文件夹及其文件:

rm -rivf ****

常用  rm -r ***

-r 级联删除里面的文件和文件夹-f 强制删除 -v 显示删除信息 -i 交互式删除,每次删除前会进行询问

 文件copy:

cp -r tempdir1 tempdir2 将dir1及其下的子文件复制到dir2中,但是不包括子文件夹结构

cp -p tempdir1 tempdir2 可将文件及其文件夹结构统一复制过去。

cat aaa.txt >> bbb.txt   将文件aaa内容复制到bbb中。

远程copy:

     scp -r local_folder remote_username@remote_ip:remote_folder 

    或者 
     scp -r local_folder remote_ip:remote_folder  

创建文件夹:

mkdir -mpv *****

-m, --mode=模式类似 chmod  -p, --parents  级联创建目录   -v, --verbose  每次创建新目录都显示信息       --version 版本信息       --help     帮助信息Example:mkdir -m 770 aaamkdir -pv  test/test1

建立软连接:

-》ln -s /opt/greenplum/conf gpc

这样直接输入gpc会直接进入conf目录下,就如同建立快捷方式一样

查看当前所在路径:

  -》pwd

修改文件名或文件夹名

       如果查看详细: ls -l

       修改文件名 mv file1 file2

        移动文件及文件夹也是此命令 mv -rf file1  file2    r是级联,f禁止交互

查看文件的3种状态:

  ->stat ***

对应最近的 ATime CTime MTime。 权限时间  变更时间 修改时间

 

 防火墙:

当tomcat启动后,外网还是不能访问,有可能是防火墙打开造成的。

关闭防火墙命令:systemctl stop firewalld.service

开启防火墙:systemctl start firewalld.service

防火墙状态: systemctl status firewalld.service

关闭开机自启动:systemctl disable firewalld.service

开启开机启动:systemctl enable firewalld.service

另一种:

防火墙状态:  service iptables status

 1) 重启后生效

     开启: chkconfig iptables on
     关闭: chkconfig iptables off
2) 即时生效,重启后失效
     开启: service iptables start
     关闭: service iptables stop

防火墙还需要关闭ipv6的防火墙: chkconfig ip6tables off

 

安装应用

安装rpm:

rpm -ivh ***.rpm

卸载:

rpm -e ***

询问是否有安装:

rpm -qa | grep -i [mysql]

 

权限管理:

  chmod -R 770  ****

       如果一个文件夹下没有文件则不加R.注意R要大写。

总共为9个属性。前三个为拥有者权限,中间3个为群组用户权限,后3个为其它用户权限。改变九个属性, chmod 档案属性的改变使用的是 chmod 这个指令,但是,属性的设定方法有两种, 分别可以使用数字或者是符号来进行属性的变更。数字类型改变档案权限 Linux 档案的基本属性就有九个,分别是 owner/group/others 组别的 read/write/excute 属性:           -rwxrwxrwx这九个属性是三个三个一组的!其中,我们可以使用数字来代表各个属性,各属性的对照表如下: r:4w:2x:1同一组 (owner/group/others) 的三个属性 (r/w/x) 是需要累加的,例如当属性为 [-rwxrwx---] 则是: owner = rwx = 4+2+1 = 7group = rwx = 4+2+1 = 7others= --- = 0+0+0 = 0所以等一下我们设定属性的变更时,该属性的数字就是 770 啦!变更属性的指令 chmod 的语法是这样的:[root@linux ~]# chmod [-R] xyz 档案或目录参数:xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。-R : 进行递回( recursive )的持续变更,亦即连同次目录下的所有档案、目录     都更新成为这个群组之意。常常用在变更某一目录的情况

 

用户管理:

用户转化

 》su gpadmin

 》chown -chR gpadmin:gpadmin test     //将test文件夹使用者又root用户root组转变到 gpadmin用户gpadmin组  

 》chown --help    //查看命令使用

注意chown只能从root转变到其它用户,用户之间不能转变,也不能转给root。否则Operation not permitted

创建用户:

》useradd gpadmin

》groupadd -g 530 gpadmin

建立一个新用户账户testuser1,并设置UID为544,主目录为/usr/testuser1,属于users组,并建立用户的自动登录文件夹

>useradd -u 544 -d /usr/testuser1  -g users -m  testuser1

>passwd gpadmin    #设置密码

 

文件压缩和解压命令: 

  unzip ***.zip   -d   /**

 tar -zxvf *****.tar.gz    //解压gz文件,普通zip文件无法解压

使用此命令解压zip会报出以下错误:gzip:stdin has more than one entry--rest ignored.

 tar unzip -o ****.zip     //解压zip文件  -o 强制覆盖

 tar cvf *****               //压缩文件

- zxvf -z 是配合解压.GZ的 -x 解开一个包文件 | -c 压缩一个文件 (compose)-v 显示详细信息 -f 必须,表示使用归档文件tar –zxvf apache-tomcat-5.5.36.tar.gz -C /usr/local/program

 

端口,PID,应用名

 查看端口和关闭端口:

查看端口对应的应用进程名称

>netstat -an|grep 80 有的是

>netstat -an | grep ':80'

>netstat -anp | grep ':80'

>netstat -a  显示所有权限可看到的端口

>netstat -t   仅显示tcp相关的选项

查看端口所有端口:netstat -ano

查看指定端口:netstat -aon|findstr "49157"

找到PID,输入即可知道是那个程序占用:tasklist|findstr "2720",或在任务管理器查看pid情况

-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n 拒绝显示别名,能显示数字的全部转化成数字。-l 仅列出有在 Listen (监听) 的服務状态-p 显示建立相关链接的程序名和PID-r 显示路由信息,路由表-e 显示扩展信息,例如uid等-s 按各个协议进行统计-c 每隔一个固定时间,执行该netstat命令。提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

 

注意:Solaris不能直接查看端口对应的进程名,可写以下脚本.sh执行此脚本,但需要较大权限

cd /procfor i in *doecho ------process $i ------pfiles $i|grep -i "port:11760"done

 

查看应用进程名称对应的进程PID

 >ps -ef|grep ****

>ps -ef|grep java

>ps -ef|grep java6_64

>ps -ef|grep tomcat

 

ps -aux | grep ***      //也是

lsof:

   >lsof -i | grep pid        //根据pid查端口

   >lsof -i:port                 //根据端口查pid

netstat:

    >netstat -nap | grep pid    //根据pid查port

    >netstat -nap | grep port  //根据port查pid

 关闭进程:

    >kill -9 [PID]

 

start & shutdown

nuhup命令 和 & 命令

在执行服务时,不想让在前台执行,在后台自动执行可使用  &

>sh  ***.sh &

通过远程ssh访问,或打开控制台访问启动服务,如果关闭此窗口则会引发启动服务对应的session关闭而终止。

因此可通过nuhup命令不间断执行命令。同时将启动过程记录在当前目录下的nuhup.out文件中。

>nuhup ./startup.sh

定义进程名称启动  

>nuhup ./startup.sh -c **** &

空输出:

*** >/dev/null 2>&1 &  将内容输出为空,即不做任何输出 

 

 

远程操作

 远程复制: scp  myTest.jar   root@192.168.102.22:/usr/local/myProgram

 远程命令: ssh  root@192.168.102.22

可通过for循环来处理批量执行的东西,将ip地址写入到txt文件中。

for ip in `cat ipList.txt`;doscp test.jar admin@$ip:/usr/local/done

scp免密登录互信: http://www.mamicode.com/info-detail-2128504.html

异常

scp promission deny 异常

/etc/ssh/sshd_config中的PermitRootLogin 为 yes ,然后重启ssh (/etc/init.d/sshd restart)

sudo   promission deny   异常

  将 /etc/sudoers文件变为可读写,然后将root  ALL=(ALL),复制一行,变为admin即可。

 

转载于:https://www.cnblogs.com/DennyZhao/p/7456821.html

你可能感兴趣的文章
如何解决Android开发学习过程中缺乏后端接口的问题「Android,资源向」
查看>>
关闭wps自动升级
查看>>
【设计模式】面向对象六大原则
查看>>
Web 通信 之 长连接、长轮询(long polling)
查看>>
Git教程摘录
查看>>
JQuery基本知识框架思维导图(上)
查看>>
Java 数据类型
查看>>
iView 发布微信小程序 UI 组件库 iView Weapp
查看>>
运维Caron 的一条心理的os
查看>>
Android - Fragment(二)加载Fragment
查看>>
JVM笔记6-垃圾回收器
查看>>
Java并发编程笔记1-竞争条件&初识原子类&可重入锁
查看>>
工厂+单例模式
查看>>
火爆的在线知识付费,能否缓解你的知识焦虑
查看>>
阿里云ACM英文版上线,论“全局配置”在电商国际化微服务平台建设中的妙用
查看>>
getComputedStyle方法获取元素CSS值
查看>>
关于图片的Base64编码
查看>>
Android加载Gif和ImageView的通用解决方案:android-gif-drawable(1)
查看>>
WPF TextBox/TextBlock 文本超出显示时,文本靠右显示
查看>>
C++的函数对象优于函数指针地方
查看>>