Linux常用的命令
Posted 文思飞扬
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用的命令相关的知识,希望对你有一定的参考价值。
mac ifconfig 查看ip地址
Linux是区分大小写的
1. ls 命令 等同 dir命令, 会列出文件夹里的所有内容
ls -l 显示的长格式的内容
ls -a 显示全部内容,包括隐藏的文件,隐藏文件前面都会有一个.
ls -al 可以合并写,结果就是两个的结合
ls -d 这个选项是针对目录的,可以查看指定目录的属性,一般和 -l 一起用,
2. cd 切换目录的命令,cd Desktop 去到Destop目录,cd .. 返回上级目录
3. mkdir 创建目录,不能在同一文件夹下重复创建
mkdir -p tmp/test,如果目录不存在则强制创建目录,这个是在本目录下创建,如果写成mkdir -p /tmp/test如果没有权限的话会报错,应该是不能这么写,只能操作本目录下的东西,不能加/
mkdir -m 用于指定要创建目录的权限,一般用chmod来设置,下面会有讲解
touch 创建文件
rmdir 删除空目录,也有-p参数,但也是删除一连串的空目录,但是如果目录里面有目录或是文件则会报错
4. cp 复制文件, cp -r(-R) 复制目录,没有大小写之分
cp -i 复制文件时如果遇到一个已存在的文件,会询问是否覆盖
这个目录如果有重复的,使用 -ri(ir)不会有询问,只有文件的重复才会
需要满足条件,首先复制的文件要是当前目录下的文件,否则无法复制,其次复制到的目录要是当前目录下的目录,否则无法复制。
cp 文件名 目录/复制后的名字(可以修改)
cp -R 文件目录名 目录/复制后的名字(可以修改)
5. rm 删除文件,rm -r 删除目录,可以删除非空目录,
rm -f 表示强制删除目录
rm -i 删除时会询问是否删除文件或文件夹
可以组合使用
6. pwd 获取全部路径
7. vi
进入到文件内部
vi index.js 进入到文件内部,按i输入内容,按esc,然后输入:wq退出文件。
输入多了怎么删除呢, 怎么上下选择
命令集锦: http://man.linuxde.net/vi
i/a
esc
dd //在非编辑状态连按两下
/fmt //搜索,按n是查找下一个
:q! //强制退出
:wq //保存并退出
8. cat index.js 查看文件内容
-n 把行号也显示在屏幕上
-A 这个是区分大小写的,表示显示所有的内容,包括特殊字符。不知道为什么会有一个$符在每行的最后。
tac 是cat的反序写法,也是把文件的内容显示在屏幕上,只不过是倒序显示,现显示最后一行。
more 也用于查看文件的内容,后面直接跟文件名,当文件内容太多,一屏显示不下时使用more,按空格(或Ctrl+F)向下翻屏,按Ctrl+D向上翻屏,看完所有内容会自己退出,如果想提前退出按q健即可。
less 也是用于查看文件,后面直接跟文件名,但是less比more的功能要多一些,按空格健可以翻页,按j健可以向下移动,按一下移动一行,按k健可以向上移动。
在使用more和less查看某个文件时,可以按下/健,并输入一个字符串,然后回车,这样就可以查找这个字符串了,如果查找多个该字符串,可以按n健显示下一个,另外,也可以用?代替/来搜索字符串,它们的区别是,/是当前行向下搜索,?是当前行向上搜索。
head 用于显示文件的前十行,后面直接跟文件名,如果加-n选项的话,则显示文件前几行,可以写-n2,或-2。
tail 用于显示文件的最后十行,后面直接跟文件名,如果加-n的话,则显示文件的最后几行,可以写-n2,或-2。
-f 选项也是常用的,可以动态的显示文件的最后十行,如果文件在不断的增加,使用-f会非常直观和方便,用来查看线上的log。
(还是那句话版本不同实际操作的情况不同,但是都会有这些命令)
9. mv 移动文件夹(文件),移动后原目录 (文件)就不存在了,这个命令可以操作文件夹和文件
mv 文件名 目标路径(/修改后的名字)
这个会分两种情况第一种,目标文件是目录(即移动的源是目录),如果该目录不存在,则会把源目录重命名为目标目录名,如果该目录存在,则把源移动到目录中。
第二种,目标文件是文件(即移动的源是文件),如果该文件不存在,则会把源文件重命名为指定的目标文件,如果该文件存在,则会询问是否覆盖(有些版本的Linux会询问,因为它们默认是mv -i,而有些不会,需要自己加上-i)。
10. 给文件内添加内容可以使用echo ‘aaaa‘ > index.js,这个是给第一行添加,如果继续是> 的话会删除之前的所有内容,重新从第一行添加,>> 这个是追加的意思,会在文件内追加,而不会删除原来的内容
11. Linux文件的权限操作,groupadd,useradd,添加组和添加用户,怎么在组中添加用户呢?后面补充
文件和目录的权限有三种,r读,w写,x可执行,对于一个目录来讲,打开这个目录就是执行这个目录,所以一个目录必须要有x权限才能打开并查看目录内的内容。
我们新建一个目录权限列表是
drwxr-xr-x, d表示目录,后面每三位一组,分别表示所有者、所有组、其他用户对该目录的权限。设置权限也是三个一组设置,rwx对应的数值分别是 4,2,1,新建的目录权限是 755,新建文件的权限是644,即-rw-r--r--,第一位-表示文件。
ubuntu修改root登录的方法:因为如果不是root登录,则无法修改权限
http://blog.csdn.net/sunxiaoju/article/details/51993091
修改组的权限 chgrp [-R](只适用于目录,级连修改文件夹内部的文件,因为文件写了也没用) [组名] [文件名] (change group),这个命令的作用不大,用的少
修改所有者 chown [-R](同上)[账户名] [文件名](change owner) 或者 chown [-R] [账户名:组名] [文件名]这个命令是将文件修改为所有者是账户名,所有组是组名。
chown -R ww:lww test.js
ls -l出来的结果是
ubuntu修改root登录的方法:因为如果不是root登录,则无法修改权限
-rw-r--r-- 1 ww lww 0 2月 3 22:59 test.js
文件-,权限九位,位数,该文件的所有者,该文件的所有组,该文件的大小,2月 3 22:59表示该文件最后一次被修改的时间,文件名
其中ww不一定是lww组里的用户
/etc/passwd 和 /etc/shadow /etc/group
前两个目录一个是用户的基本信息,一个是保存用户的密码,第三个是组信息
groupadd 添加组,组会有一个gid,即groupid,自定义的组从1000开始,
groupadd test1
查看组使用 tail -1 /etc/group
会包含组的gid信息
groupdel test1 删除组,如果组中有用户了,就不能删除改组,需要将用户删除后才能删除组
useradd 添加用户,用户也会有uid,自定的用户id从1000开始,这个命令有很多参数,但是不同的系统参数会稍有差异,需要查看帮助命令,一般是
useradd [-u uid] [-g gid] [-d 自定义用户的家目录] | [-M表示不创建家目录] [-s 自定义shall]
useradd -u 1000 -g 1000 -d /home/test1 -s /sbin/bash test1
这样test1用户就建在test1组中,home下面会新建一个test1文件夹,不写的有的系统会自动创建,有的则不会,根据实际情况定
userdel -r test1 -r是连同家目录一起删掉,不加-r就不会删除家目录
chfn 更改用户的finger,即用户中的备注信息
grep ‘test1‘ /etc/passwd grep命令是在/etc/passwd文件中搜索关键字 ‘test1’
passwd test1 给用户设置密码,如果不写后面的用户,则是给当前用户设置密码,需要注意的是,只有root用户才可以修改其他账户的信息,普通用户只能修改自己的密码
用户身份切换命令
login as: test1 会切换到test1用户,但是该命令不能切换到root账户
whoami 查看当前用户
root用户是#,其他用户是$
su 命令也是切换用户,并且可以和root账户来回切换
su - root 加-切换时,当前目录会是当前账户的家目录,如果不加-,则目录不变。由root用户切换到普通用户时是不需要输入密码的
12. 查找文件
find / -name filename
13. systemctl status httpd //查看apache的启动状态
ubantu 的命令不同 是 systemctl status apache2
ssh [email protected] //登录远程服务器
14. ip, router, ifconfig
ip addr
/etc/sysconfig/network-scripts //这个目录下是关于网络的配置
15. wget curl
16
17.
18. 查看进程列表使用
top
退出按q
ps命令是静态的,也是查看进程列表
ps aux
查找某个进程
ps aux | grep 进程名字
kill (-9) pid
pkill 批量删除
w命令,查看服务器是否被其他人使用
以上是关于Linux常用的命令的主要内容,如果未能解决你的问题,请参考以下文章