增删用户
添加用户:adduser 用户名
设置密码 : passwd 用户名
删除用户:userdel -r 用户名
cd命令
/ 表示根目录
返回根目录: cd / 或者直接 cd
回到用户主目录:cd ~
返回上级 :cd ..
返回上上级: cd ../..
以此类推
../../ 表示上上级的目录
./ 在当前目录下找文件
例如:要运行tomcat/bin目录下的startup.sh
进入tomcat/bin,要输入./startup.sh,而不是 startup.sh
如果我们直接写startup.sh,linux 系统会去 环境变量PATH 里寻找有没有叫 startup.sh 的,然而PATH并没有,
所以会报错,-bash: startup.sh: command not found
切换用户
切换到root:su 或者 su root
切换到普通用户下:su 用户名
四.增删文件、文件夹
新建文件夹: mkdir 文件夹名称
新建文件: vi 文件名
新建二进制文件: touch 文件名
删除文件:
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
删除文件夹实例:
rm -rf /test/lala/
将会删除lala文件夹以及lala下面的所有目录,test还在 ,lala后面的“/”要加上,不加上会提示无该目录
删除文件使用实例:
rm abc.txt 普通删除abc.txt文件
rm -f /test/lala/abc 将会强制删除abc这个文件
重命名、移动文件或文件夹mv. 复制文件夹cp
linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.
例子:将目录A重命名为B
mv A B
例子:将/a目录移动到/b下,并重命名为c
mv /a /b/c
将当前目录下1.txt复制到/home下
cp 1.txt /home
将当前目录下1.txt复制到当前目录下并重命名为2.txt
cp 1.txt ./2.txt
将当前A文件夹复制到/home下
cp A -r /home //要加-r代表复制A文件夹下面的全部内容
将A 复制到当前目录下 并重命名为B
cp A -r ./B
tar 压缩解压
tar在Linux上是常用的打包、压缩、加压缩工具,它的参数很多,常用的压缩与解压缩参数如下
-c :create 建立压缩档案的参数
-x : 解压缩压缩档案的参数
-z : 是否需要用gzip压缩
-v: 压缩的过程中显示档案
-f: 置顶文档名,在f后面立即接文件名,不能再加参数
压缩
举例:将/home/images 目录下的文件全部打包为 /home/images.tar
tar -zcvf /home/images.tar.gz /home/images
注意:f参数后面的images.tar.gz是自己取的,习惯上用tar来做,如果加z参数,则以tar.gz来代表gzip压缩过的tar file文件
解压
将指定tgz文件解压到指定目录
tar zxvf test.tgz -C 指定目录
举例:将/home/jdk.tgz文件解压到 /home/jdk 目录
tar zxvf /home/jdk.tgz -C /home/jdk
查询、结束进程
ps是linux下最常用的进程查看命令
比如查询跟mainServer.jar有关的所有进程
ps -aux |grep MainServerPro1.jar
-A 列出所有的进程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
中间的 | 是管道命令 是指ps命令与grep同时执行
grep(global search regular expression(RE) and print out the line),就是用正则表达式进行全局搜索
2829 就是 MainServerPro1.jar的进程号PID
kill [参数] [进程号]
kill -9 2829
杀死PID为2829的进程
kill就是给某个进程id发送了一个信号。默认发送的信号是SIGTERM,而kill -9发送的信号是SIGKILL,即exit。exit信号不会被系统阻塞,所以kill -9能顺利杀掉进程。当然你也可以使用kill发送其他信号给进程
查找文件find
1.按文件名称
find / -name abc.txt //在根目录/下查找根据文件名称查找abc.txt,-name代表用名称来查找 ,表示在整个硬盘查找,./和 -name之间要有空格,不然会认为/-name为要查找的目录
find /home -name abc.txt #在/home目录下查找文件abc.txt
2.按照文件特征查找
(1)find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)
(2)find / -atime -2 # 查找在系统中最后48小时访问的文件
(3)find / -empty # 查找在系统中为空的文件或者文件夹
(4)find / -group cat # 查找在系统中属于 group为cat的文件
(5)find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)
(6)find / -mtime -1 #查找在系统中最后24小时里修改过的文件
(7)find / -user fred #查找在系统中属于fred这个用户的文件
(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
(9)find / -size -1000k #查找出小于1000KB的文件
3.使用混合查找方式查找文件
参数有: !,-and(-a),-or(-o)
(1)find /tmp -size +10000c -and -mtime +2 #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
(2)find / -user fred -or -user george #在/目录下查找用户是fred或者george的文件文件
(3)find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件
让进程后台执行nohup 和 &
让a.out后台执行:nohup ./a.out &
&的意思是在后台运行, 当你在执行 ./a.out & 的时候, 即使你用ctrl+C, 那么a.out照样运行(因为对SIGINT信号免疫)。 但是要注意, 如果你直接关掉shell后, 那么, a.out进程同样消失。 可见, &的后台并不硬(因为对SIGHUP信号不免疫)。
nohup的意思是忽略SIGHUP信号, 所以当运行nohup ./a.out的时候, 关闭shell, 那么a.out进程还是存在的(对SIGHUP信号免疫)。 但是, 要注意, 如果你直接在shell中用Ctrl C, 那么, a.out进程也是会消失的(因为对SIGINT信号不免疫)
所以, &和nohup没有半毛钱的关系, 要让进程真正不受shell中Ctrl C和shell关闭的影响, 那该怎么办呢? 那就用nohua ./a.out &吧, 两全其美
重定向日志输出:
nohup ./a.out >/dev/null 2>&1 & //把日志文件放进“垃圾箱” 既不产生nohup.out
查看IP
查看内网IP: ifconfig -a
-a 代表all,其中eth0那一项的IP 就是内网IP
查看外网Ip: curl ifconfig.me
或者:curl members.3322.org/dyndns/getip
\ + Enter
命令中的 \ 结合 Enter 键构成换行符,允许我们换行输入一个长命令,如下:
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
查看内存(详细包含所有进程):top
按内存大小排序:M(要大写)
退出top :q
仅查看内存
free -m -m (表示单位是M )
查看磁盘的内存情况
df -h
ll命令,找不到
可以直接ls -l
ll 是 ls -l的别名,之所所以 ll出现错误是因为没有定义别名。
如果要实现ll 命令,可以做如下操作:
编辑 ~./bashrc 添加 ls -l 的别名为 ll即可
[root@Centos6 ~]# vi ~/.bashrc
再次执行 ll 命令