常用linux命令符1

这遍笔记中包括我近期常用的命令(su、sudo、ifconfig、vim、mkdir、tar等等),还记录较为的基础操作(如grep、kill、ps等)。我使用的linux系统为Ubuntu14.04。
在Linux shell中有一个重要的地方是,可以将命令串起来。方法就是使用"|",称之为“pipe”。第一个命令的输出就是下一个命令的输出。
使用中可查询http://man.linuxde.net/ls,写的较为简单明了。

1.su和sudo
su是切换用户,少用;
sudo使你以root权限运行一个命令,相对安全。
运行su和sudo都需要系统密码。

root用户切换到普通用户有以下三种:
1、想从root用户切回user用户只需执行命令:su user (user是你自己安装时候的用户名),
2、直接输入exit,
3、Ctrl+D组合键退出

2.ifconfig
是linux中用于显示或配置网络设备的命令,可使用ifconfig命令来看网卡的IP地址。

3.设置全局变量:
对所有用户生效:etc/profile etc/bashrc
对单个用户生效: ~/.profile ~/.bashrc
可用 vim 或 gedit 命令修改。

4.vim 编辑配置文件

包括一般模式、编辑模式和命令模式。

1.一般模式:
以vi打开一个文件就直接进入一般模式了。在这个模式中, 你可以使用上下左右按键来移动光标,可以使用删除字符或删除整行来处理文件内容, 也可以使用复制、粘贴来处理你的文件数据。
2.编辑模式
想要无法编辑文件的内容,需按下【i, I, o, O, a, A, r, R】等任何一个字母之后才会进入编辑模式。这时候屏幕的左下方会出现【INSERT或 REPLACE】的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下【esc】即可退出编辑模式。
3. 命令行模式
输入【 : / ? 】三个中的任何一个,就可以将光标移动到最底下那一行。在这个模式中, 可以提供查找、读取、存盘、替换字符、离开vi、显示行号等的动作则是在此模式中完成的!

常用:
按 i 开始编辑,修改好按 esc 回到一般模式。
然后输入“:wq”保存退出 ; 若不想保存修改强制离开则“:q!”。

5.cd
用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径

cd /      回到根目录;
cd ~     进入用户主目录;
cd       进入用户主目录;

cd -     返回进入此目录之前所在的目录; 
cd ..    返回上级目录; 
cd ../.. 返回上两级目录;

6.ls
ls命令用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。

ls              显示当前目录下非隐藏文件与目录
ls -a           显示当前目录下包括隐藏文件在内的所有文件列表
ls -lt          按时间列出文件和文件夹详细信息
ls -ltr         按修改时间列出文件和文件夹详细信息
ls --color=auto  列出文件并标记颜色分类

查看文件大小
1.使用“ls -l”,显示的大小是文件的字节大小;
2.使用“ls -lh” ,如果文件比较大的话,使用1显示起来不是特别易读”;
3. 使用 “ls -lht”,显示当前目录下的文件。

7.创建一个文件或文件夹
mkdir创建一个目录(目录即文件夹)
默认情况下,不带任何参数运行 mkdir 命令会在当前目录下创建目录。

mkdir important

当你要创建的目录包含子目录时,你需要使用 -p 参数。如果 mkdir 找不到父目录,那么这个参数会首先帮助创建父目录。比如说我们要创建名为 letter 的目录,在它的目录下包含有子目录 important。

mkdir -p letter/important

使用 -m 参数,我们可以给即将生成的新目录设置权限。

mkdir -m=r --letter

上面的命令会创建一个名为 letter 的目录,同时为目录所有者、用户组和其他用户针对该目录赋予只读权限

创建文件
1.用vi或vim创建:

vi  1.txt //创建一个新文件1.txt

2.用touch创建:

touch 1.txt //创建一个新文件1.txt

8.rm 删除和cp 复制

rm fred.txt   删除fred.txt
rm -i fred.txt  执行命令时询问你是否真的删除文件(较常用)
cp fred.txt ethel.txt
cp fred.txt /home/sjvn/docs/fred.txt
cp *.txt /home/sjvn/docs  复制当前目录下所有以.txt结尾的文件到指定目录下。

9.tar和gzip
tar打包 -> 将一大堆文件或目录变成一个总的文件,
gzip压缩-> 将一个大的文件通过一些压缩算法变成一个小文件,
常常是先将一堆文件打成一个包,再用压缩程序进行压缩。

.tar文件
tar cvf FileName.tar DirNamr 打包
tar xvf FileName.tar   解包

对.gz文件
gzip FileName   压缩
gzip -d FileName.gz   解压

对.tar.gz文件
tar zcvf FileName.tar.gz DirNamr 压缩
tar zxvf FileName.tar.gz

10.grep搜索
文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
简单的用法:

grep foo /etc/passwd
//返回在password文件中所有的含有foo的行
grep -i "foo" /etc/passwd
//加入i则忽略大小写
grep -r "foo" /home/sjvn
//搜索/home/sjvn目录及其子目录下所有的包含“foo”的行
grep -n 'linux'  test.txt
//从文件中查找关键字并显示行号

11.ps查看进程
报告进程的状态,显示哪些程序正在运行

ps -a                 显示现行终端机上的所有程序
ps -ef|grep abc       查看含有abc的活动进程
ps -ef|grep -v abc    查看不含有abc的活动进程

12.kill杀死进程:
常规篇
(当进程数较少的时候)

ps -ef           查看所有进程
kill -s 9 1827   杀死进程id为1827的进程,其中-s 9制定了传递给进程的信号是9,即强制尽快终止进程。

进阶篇
(方法很多,记录常见且便于使用的3种)
1.
把ps的查询结果通过管道给grep,查找包含特定字符串的进程。

ps -ef|grep firefox   输出包含特定字符串的进程信息
kill -s 9 1827          杀死该进程

2.

ps -ef|grep firefox|grep -v grep|cut -c 9-15|xargs kill -s 9 

首先输入所有含有关键字firefox的进程;
在列出的进程中去除含有关键字“grep”的进程;
截取输入行的第9个字符到第15个字符,正好为进程号;
xargs命令是用来把前命令的输出结果(PID)作为kill命令的参数。

3.
pgrep是专门用于进程查询的grep

pgrep firefox|xargs kill -s 9 

你可能感兴趣的:(linux-shell)