Linux终端命令

Linux终端命令

 

1.终端命令的使用技巧

ctrl+shift+(+/=)    其实就是ctrl+“+”  放大终端界面字体;

ctrl+- 缩小终端字体;

tab  自动补全(注意,Linux是区分字母大小写的) ,双击tab的话,会根据你输入的首字母进行匹配查看有哪些内容;

ctrl+c 开启一行,重新输入命令;

 

 

2.终端命令的格式

2.1 格式

command   -options   parameter

command  :命令名字;

-options  :选项,可用来对命令进行控制,也可以省略

parameter:传给命令的参数,可以是0,一个,多个;

 

2.2 两种方式查看命令帮助信息

command --help

说明:显示command命令的帮助信息;

man command

查看命令的使用手册,使用q退出这个帮助信息;

 

 

3.Linux中最常用的七个命令

3.1查看文件夹下的文件:

序号命令对应英文作用
01lslist列出文件夹下的所有的文件
02pwdprint work dirctiory查看当前所在目录
03cd xxxchange dirctiory切换目录
04touch xxxtouch摸一下就创建了一个文件
05mkdir xxxmake directory创建目录
06rm xxxremove删除指定的文件名
07    clearclear清屏

 

4.目录相关的命令

4.1ls命令的扩展

ls -a

查看所有的文件 -a 就是all的意思;

-a 也能查看隐藏文件(.开头的文件)

. 表示当前目录

.. 表示上级目录  例如:cd ..  切换到上级目录

ls -l

显示文件的详细信息,例如:     

-rwxrw-rw- 1 zq zq 22940380 Oct 19 07:47 sougou.deb

 

ls -l -h 可以简写成 ls -lh   也可ls -lha 显示所有的文件信息:

-h和-l配合使用,人性化的显示文件大小;

-rwxrw-rw- 1 zq zq  22M Oct 19 07:47 sougou.deb

就可以看到文件的大小22M;

 

ls通配符的使用

如果文件中的文件特别多是就要使用通配符了

*  可以代码任意字符

? 问号,可以代表一字符,用法和*是一样的;

ls -a*    列出以a开头的所有文件;

ls -*b    列出所有已b结尾的所有文件;

ls -*c*  列出所有中包含c的文件;

 

4.2cd切换目录

命令说明
cd切换到当前用户的主目录(/home/用户目录)
cd ~切换到当前用户的主目录(/home/用户目录)
cd .保持当前目录不变
cd ..切换到上级目录
cd -在最近的两个目录中来回切换
cd ~/xxx快速的切换到了home/xxx目录

 

5.创建和删除

5.1 touch命令

如果文件不存在的话,就会创建一个空白的文件;

如果文件存在的话,会修改一下文件的最后修改信息;

5.2 mkdir -p

创建目录

mkdir aa  会创建一个aa文件夹

mkdir -p 创建多级文件夹

mkdir -p aa/bb/cc/dd  创建多级文件夹;

ps:在同一目录下,文件夹和文件名字是不能相同的;

5.3 rm删除命令

rm是直接从磁盘中干掉的,是不能恢复的;不进回收站(只能干掉文件,不能干掉文件夹)

rm -r  可以删除多级目录(包含文件和文件夹)

rm -f 强制删除,忽略错误,不提示;

 

6.拷贝和移动文件

6.1 tree

查看目录层级关系

使用tree ~  查看home下的目录结构

tree -d  只显示文件夹,不显示文件;

 

6.2 cp命令 拷贝文件

cp 就死copy的简写

cp 路径/文件名  路径    就可以拷贝文件了;  即使文件存在也是直接覆盖的;

 

cp -i   复制文件的时候会检查是否文件存在,会有提示需要覆盖吗?

cp -r  复制目录;

 

6.3 mv命令

mv就是move的缩写

mv xxx1 xxx2  将xxx1移动到xxx2中;

但是在移动的时候可能会存在文件的覆盖,和要加一个 -i 进行提示,有没有文件覆盖;

 

mv命令也可以重名明一个文件或者文件目录,把aaa 命名为bbb;

zq@ubuntu:~/Desktop$ mv ./aaa ./bbb

zq@ubuntu:~/Desktop$ mv ./aaa.txt ./bbb.txt

 

 

7.文件内容的终端命令

7.1 cat      concatenate的缩写   查看文件内容,一次加载完成

7.2 more   查看文件内容,内容过多,分次显示;

cat 命令的扩展:

cat -b   输出行号,不会输出空行的行号;

cat -n   所以行的行号(包括空行)

 

7.3 grep搜索文本内容:在文件11.txt中搜索hello字符串

grep hello 11.txt

显示hello内容的行号:

grep -n hello 11.txt

显示不包含hello内容的行:

grep -v hello 11.txt

忽略大小写搜索:

grep -i hello 11.txt     grep -i "hello python" 11.txt

 

模式搜索:

行首匹配:^

例如:搜索以f为行首的:grep ^f 11.txt

           显示行号:grep -n ^f 11.txt

行尾匹配:$

例如:以k结尾的行   grep k$ 11.txt

           显示行号:grep -n k$ 11.txt

 

8.其他命令

8.1 echo 

echo 会在终端中显示参数 指定的文字,通常会和重定向联合使用

例如:zq@ubuntu:~/Desktop$ echo helloPython > log.txt
 

8.2 重定向 > 和 >>

Linux允许将命令执行的结果 重定向 到一个文件中;

将本该输出显示在终端上的内容 输出追加到指定的文件中;如果文件不存在会创建,存在会覆盖;

如果使用>>不会覆盖而是追加;

例如:zq@ubuntu:~/Desktop$ ls -lh > log.txt

 

>  表示输出,会覆盖文件的原有的内容

>>  表示追加,会将内容追加到已经有的内容的末尾;

 

8.3 关机/重启

shutdown                 默认一分钟后关机

shutdown  now              立刻关机

shutdown -c             取消关机

shutdown -r             重启电脑(在实际开发中都是重启,没有关机,不然谁帮你启动电脑啊)

shutdown -r now            立刻重启电脑

 

8.4 ifconfig  查看网卡信息

直接在终端输入ifconfig
也可以通过管道过滤下ip信息: ifconfig | grep inet

ps:127.0.0.1 被称为本地回环/回环地址,一般用来测试本机网卡是否正常;

8.5 ping

检测到目标主机是否连接正常;

ping xxx

测试下本地网卡是否正常 ping 127.0.0.1 

ps:Linux终端程序中想要终止一个程序,绝大多数可以使用ctrl+c;

 

8.6 远程登录和复制文件

在Linux中ssh是一个非常常用的工具,通过ssh客户端可以连接到运行了ssh服务器的远程机器上;

SSH 全名:Secure shell (SSH) 协议连接到远程计算机的软件程序;

ssh -p port  username@ip

username 是远程计算机上的用户名;

ip为远程机器的ip/域名

port 是SSH Server监听的端口号,如果不指定,就默认的是22;

例如:ssh -p 22 zq@172.16.140.138

在Ubuntu或者mac的电脑中默认是安装了SSH客户端的;所以可以直接使用ssh命令

但是在windows系统上就要安装相应的客户端软件了,例如xshell、putty

xshell的官方下载地址:http://www.xshellcn.com/

 

8.7 scp

全名:secure copy ,是一个在Linux下用来进行远程拷贝文件的命令

地址格式基本和ssh基本相同user@ip,只不过在指定端口的时候 大写的 -P 而不是小写的;

ps:scp 是在mac系统中可以这样和Linux进行文件交互;

在windows中药使用xftp软件进行和Linux文件的交互;

 

9.用户权限终端命令

硬连接数:有多少中方式可以访问文件或者文件夹,

比如下面的01.py 文件 只能通过绝对或者相对路径进行访问(相对路径在实际原理也是转换成了绝对路径的);

在比如 aaa文件夹 的硬连接数是3: 可以通过绝对路径访问,通过cd .  的方式访问当前目录;在aaa下还有一个a文件夹,可以通过a ..的方式返回到上级目录;所以是3种方式;如果在aaa文件夹下在建立一个b文件夹的话,连接数就成了4了;

 

9.1修改文件权限

去掉可读权限

chmod -r aa.py

去掉可写权限

chmod -w aa.py

去掉可读可写权限

chmod -rw aa.py

添加权限就是把-改成+就可以了

添加可以执行权限,文件就变成了绿色;

chmod +x aa.py

 

目录的权限修改,创建一个目录的时候默认都是有可执行权限的;不然的话文件夹没办法访问;更改权限和文件的修改权限的命令是一样的;

root账户:就是超级用户,是具有所有的权限的;如果误删除了系统文件可能会崩溃,一般是不推荐使用root用户登录的;

但是有时候要切换到超级用户权限的时候:可以在命令前加一个sudo  以root的身份执行命令了;

 

9.2 组管理的命令

添加组

sudo groupadd dev

删除组

sudo groupdel dev

通过查看系统group文件查看有没有组信息,在文件的最后一样是否有组信息;

cat /etc/group 

 

需求:建议一个文件夹,建立一个组,把文件夹放管理权限添加到新建的组中;

1.mkdir 文件夹名字

2.sudo groupadd 组名

3.cat /etc/group     查看组是否添加成功了;

4.chgrp -R 组名 文件夹名

 

10 .用户管理的终端命令

sudo useradd -m -g dev zq     常见一个zq的用户

sudo passwd zq      给zq这个用户设置密码;

userdel -r zq      删除这个用户;

 

查看用户信息:

id 用户名

[zq@localhost home]$ id zq
uid=1000(zq) gid=1000(zq) 组=1000(zq),10(wheel)

这个信息是保存在etc/passwd文件中的;

 

who  

查看当前所有的用户登录了系统;

whoami

查看当前登录的用户名;

 

11.which

查看文件的位置;

which python        输出/usr/bin/python

ls -l /usr/bin/python

lrwxrwxrwx. 1 root root 7 11月 16 19:33 /usr/bin/python -> python2

 

12 .切换用户

 

13.系统相关信息的命令

13.1 时间和日期;

1.系统时间

date

2.日期

cal   查看日历,-y 可以查看一年的日历;

13.2 查看磁盘的信息;

df -h     显示磁盘的剩余空间

du -h   目录      查看目录的占用空间大小

其中-h 是以人性化的显示占用大小;

 

14.进程信息

 

15 find命令

查找文件

find 路径 -name "*.py"

省略路径的话就是当前文件夹下、

 

find -name "*.txt"

find -name "*1*"

find -name "1*"

16.软连接

相当于windows中的桌面的快捷方式;

17.硬连接

软连接中没有-s就是硬的;

在liunx中文件数据和文件名是分开存储的,

硬连接相当于给文件数据有引用了一个名字,删除原来的名字对文件数据不影响;

软连接则是连接到的文件的名字,删除了文件的名字后,就无法访问文件数据了;(删除文件名字,其实数据也已经删除了,因为没有引用指向数据了。系统会将数据源也一并删除掉);
一般不会建立硬连接的;

 

18 终端命令实现打包压缩

18.1 打包:

tar -cvf 打包.tar 被打包的文件名,只负责打包,不负责压缩;

例如:tar -cvf 1.tar a.py b.py c.py

解包:tar -xvf 1.tar          默认是当前路径;

解包:tar -xvf 1.tar -c 目标路径

18.2 压缩:

使用gzip来进行压缩,加一个z就可以了

例如:tar -zcvf 1.tar *.py

解包:tar -zxvf 1.tar

解包:tar -zxvf 1.tar -c 目标路径

 

19.上传和下载文件

上传文件:两步走

sudo su

rz -b

 

下载文件:两步走

sudo su

sz -b 文件名

 

20.   yum whatprovides  

解决办法:
 1、执行命令: yum whatprovides libstdc++.so.6
 
然后会提示哪个安装包有这个库文件如下:
 
[root@localhost ~]# yum whatprovides libstdc++.so.6
 Loaded plugins: aliases, changelog, downloadonly, fastestmirror, kabi, presto, refresh-packagekit, security, tmprepo, verify,
              : versionlock
 Loading support for CentOS kernel ABI
 Loading mirror speeds from cached hostfile
  * base: centos.ustc.edu.cn
  * centosplus: centos.ustc.edu.cn
  * contrib: centos.ustc.edu.cn
  * extras: centos.ustc.edu.cn
  * updates: centos.ustc.edu.cn
 libstdc++-4.4.7-3.el6.i686 : GNU Standard C++ Library
 Repo        : base
 Matched from:
 Other      : libstdc++.so.6
 
2、然后执行:
 
yum install libstdc++-4.4.7-3.el6.i686
 
搞定!

 

  • 5
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值