1、查看当前IP:ifconfig
如果使用云服务器(如:青云、阿里云),只有内网网卡,没有外网网卡(所以只有虚拟IP,无法绑定的)。后面会说kafka,使用云服务器的会有问题。
2、CRT/XSHELL 连接Linux
根据查看Linux当前IP得知,内网IP(inet addr:192.168.137.130)为192.168.137.130,端口为22(ssh协议默认通过22端口)
因此,在XSHELL进行如下操作:
3、文件创建
(1)vi 文件名(可空可不为空)
(2)touch 文件名
4、文件夹创建
(1)mkdir 文件夹名
可以CD进去
(2)创建连续3层文件夹:mkdir -p 1/2/3
(2)同一层创建3个文件夹
mkdir 1 2 3
5、移动文件或文件夹
mv 文件名或文件夹名
mv test.log /root ---------原路径是不存在的
6、cp 复制文件或文件夹
cp 20180515.log Desttop/ -----------原路径还存在
cp -r 文件夹名/ 文件夹名/
7、查看文件内容
(1)cat 20180427.log ----------- 一下子将内容全部展现出来
(2)more 20180427.log -------- 展现页面大小能展现的内容,按空格翻页
(3)less 20180427.log --------展现页面大小能展现的内容,配合(/内容)查找日志中需要匹配的内容,按n往下翻页,N网上翻页。Enter是不匹配内容直接往下翻页
8、tail 实时查看文件内容
(1)tail -f 文件名:
(2) echo 123 >>test.log:
打印123追加到tess.log文件夹里最后的内容后面
echo 123 > test.log
打印123覆盖到tess.log文件夹里最后的内容后面
此时报错:
echo的问题,用cat test1.log > test2.log就没有问题,最终:
tail -f 等同于--follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止
tail -F 等同于--follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪
案例:
xxx.log---> 生产上的系统记录日志一般保留10份
内容大小达到100M就切1次,相当于执行了如下命令:
mv xxx.log xxx.log1
touch xxx.log
因此需要用 tail -F xxx.log 来监听日志,否则会出错
tail -200f xxx.log-------实时倒着查看最新的200行
9、别名
alias 别名='命令行'(注意:别名='‘没有空格!!!)
alias修改的别名只能在当前的链接中使用,别的链接不可用,想要永久别名,需要配置环境变量
10、环境变量
(1)全局:
/etc/profile
1)使用命令vi /etc/profile后在文件末尾处新增:
# alias
alias HB1='cd /root/1/2'
2) 接着source /etc/profile启动服务,让配置生效
(2)个人环境:
~/.bash_profile
个人环境变量文件生效:
. .bash_profile
source .bash_profile
假如bash_profile为空,.bashrc也可以
取决于个人用户组还是全局root组在使用这个环境变量
11、删除
(1)rm xxx.log:删除一个文件,会弹出提示,询问你是否删除
(2)rm -f xxx.log:删除一个文件,不询问
(3)rm -r xxx(文件夹名):删除一个文件夹,会弹出提示,询问你是否删除
(4)rm -rf xxx(文件名):删除一个文件夹,不询问
(5)rm -rf /:不能做
12、history 查看历史命令
!70:执行历史命令的第70行(注意:不可同一行写history !70)
13、用户,用户组的常用命令
(1)useradd:自动创建一个用户和用户名称
id HB:显示HB用户的权限、分组
gid:主组
groups:所有组
(2)删除用户
userdel 用户名:
userdel HB
(3)ll /user/sbin/user*
*号表示模糊查询
(4)新增用户组:
groupadd 组名
(5)修改用户的用户组:
usermod -a -G 目标用户组名 源用户组名:
(6)修改用户的组ID
usermod -g HAHA HAHA1
14、/etc/passwd:该目录存储的是操作系统所有的用户信息,该文件为所有用户可见
15、管道符:|(用于为前一个命令再添加检索条件,比如下例:)
cat /etc/passwd | grep HB(打开/etc/passwd文件,其中检索关键字HB的内容)
16、查看命令帮助
命令名 --help
man 命令名
17、设置密码
passwd 用户名
18、切换用户
(1)su 用户名
(2)su - 用户名:
1)切换用户之后,执行环境变量文件.bash_profile
2)且进入该用户的家目录
工作上,分配给你一个用户,
记住2件事:
1. history
2. 查看环境变量文件
19、退出当前用户,返回上一次用户:
exit:
20、临时获取root的权限
(1)从root切换到HBinz用户使用root命令,但无root权限,因此需要临时获取root权限
(2)sudo 用户名:用户临时获取root权限
(3)找到sudoers file文件。从root进入,在/etc(存放系统文件)目录里面找到sudoers file文件,vi进去该文件找到root。
(4)/etc/sudoers profile中新增HBinz用户的描述如下:
(5)进入命令行模式输入wq!(!表示强行退出)
(6)HB1不是一个应用程序而是Linux内建shell的命令的重写,而sudo仅仅只对应用程序起作用。 sudo foo只意味着以root权限运行foo程序 所以,sudo HB1会报sudo: HB1:找不到命令。
21、进程
前言:
linux的服务都是在后台挂起的,要怎么查看这些服务呢,需要查看进(1)查看进程:
ps -ef
(2)查看特定进程:
ps -ef | grep tail (查看tail进程)
(3)删进程:
kill -9 进程号(第二列)
(4)删除所有tail命令的进程的方法
(注意:杀死关于tail命令的所有进程之前,给我ps -ef|grep tail查看确认清楚)
1)kill -9 26027 26034 26049
2)kill -9 $(pgrep -f tail)
22、端口号
(1)首先查看被查服务的进程
ps -ef |grep ssh
(2)接着查该服务的端进程号的口
netstat -nlp |grep 1794
(2)也可以直接netstat -ntp | grep ssh