概要

视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完毕了窃取资料的任务。

Linux 刚出世时没有什么图形界面。全部的操作全靠命令完毕。就如同电视里的黑客那样,充满了神奇与晦涩。

近几年来。虽然 Linux 发展得很迅速,图形界面越来越友好,可是在真正的开发过程中,Linux 命令行的应用还是占有很重要的席位。

能够说不会命令行,就不算会 Linux。

Linux 提供了大量的命令。利用它能够有效地完毕大量的工作。如磁盘操作、文件存取、文件夹操作、进程管理、文件权限设定等。

Linux 发行版本号最少的命令也有 200 多个。这里仅仅介绍比較重要和使用频率最多的命令。

命令用法

Linux 命令格式:

command  [-options]  [parameter1]  … 

说明:

command:命令名。对应功能的英文单词或单词的缩写

[-options]:选项。可用来对命令进行控制,也能够省略

parameter1 …:传给命令的參数,能够是零个一个或多个

例:ls  -a  /home

怎样查看帮助文档:

1)--help

通常是 Linux 命令自带的帮助信息。并非全部命令都自带这个选项。

如我们想查看命令 ls 的使用方法:ls --help

2)man (有问题找男人)

man 是 Linux 提供的一个手冊,包括了绝大部分的命令、函数使用说明。

该手冊分成非常多章节(section),使用 man 时能够指定不同的章节来浏览不同的内容。

man 中各个 section 意义例如以下:

1、Standard commands(标准命令)

2、System calls(系统调用,如open,write)

3、Library functions(库函数,如printf,fopen)

4、Special devices(设备文件的说明。/dev下各种设备)

5、File formats(文件格式。如passwd)

6、Games and toys(游戏和娱乐)

7、Miscellaneous(杂项、惯例与协定等。比如Linux档案系统、网络协定、ASCII 码;environ全局变量)

8、Administrative Commands(管理员命令,如ifconfig)

如,我们想查看 ls 的使用方法:man 1 ls ( 1:为数字“1”。代表第 1 个 section,标准命令 )

实际上,我们不用指定第几个章节也用查看。如,man ls。可是。有这个一种情况。假如。命令的名字和函数的名字刚好重名(如:printf),它既是命令。也能够是库函数,假设。我们不指定章节号。man printf。它仅仅查看命令的使用方法。不会查询函数的使用方法,由于 man
是依照手冊的章节号的顺序进行搜索的。

所以,使用 man 手冊时,最好指定章节号:

使用技巧

自己主动补全:

在敲出命令的前几个字母的同一时候,按下 tab 键,系统会自己主动帮我们补全命令。

历史命令:

当系统运行过一些命令后,可按上下键翻看曾经的命令,history 将运行过的命令列举出来。

重定向( > ):

本应显示在终端上的内容保存到指定文件里。

如:ls > test.txt ( test.txt 假设不存在,则创建,存在则覆盖其内容 )

管道( l ):

当我们搜索含某个keyword的文件或目录时,常常须要用到管道。结合 grep ( 搜索命令 ) 一起使用。

管道我们能够理解现实生活中的管子,管子的一头塞东西进去,还有一头取出来。这里“ | ”的左右分为两端,左端塞东西,右端取东西。

如:ls | grep g。ls 本来显示到屏幕的内容塞进管道的左端,然后从右端取出这些内容。在内容中搜索有 “g” keyword的文本。

经常使用命令

文件、磁盘管理:

ls:显示文件夹内容

-l:列表显示

-a:显示全部文件(隐藏文件以“ . ”开头)

-h:配合 -l 以人性化的方式显示文件大小


clear:清除终端上的显示,也可使用快捷键:Ctrl + l ( “l” 为字母 )


cd:切换文件夹
cd  /mnt 可进入 mnt(指定)文件夹

cd  .. 可进入上一层文件夹

cd  - 可进入上一个进入的文件夹

cd  ~ 可进入用户的家文件夹 ( ~:代指家文件夹,家文件夹指 /home 里的用户文件夹,不是纯粹的 /home 文件夹 )

pwd:显示当前工作文件夹的绝对路径



注意:假设路径是从根路径開始的,则路径的前面须要加上 “ / ”。如 “ /mnt ”。通常进入某个文件夹里的文件夹,前面不用加  “ / ”。


mkdir:创建文件夹

-p 递归地在指定路径建立目录

cat:显示文本文件内容

rm:删除文件或文件夹

-r:删除目录时必须加此參数

-f:强制地删除文件

cp:拷贝文件

-r:拷贝目录

-i:有反复文件时,提醒是否覆盖

-v:显示拷贝进度

cp vim_configure/ code/ -ivr 把文件夹 vim_configure 复制到 code 文件夹里

mv:移动文件或更改文件名称

–v:显示移动进度

mv file1 file2   file1 改名为 file2

mv vim_configure/ code/  vim_configure/ 移动到 code 文件夹里

which:查看命令所在的文件夹

tar:压缩与解压缩命令

gzip 格式(压缩包后缀为.tar.gz):

压缩使用方法:tar cvzf 压缩包包名 文件1 文件2 ...

c:create,创建

v:显示压缩进度

z:指定压缩包的格式为 gzip 格式,file.tar.gz

这三个參数的顺序随意就可以。參数的前面可加“ - ”。如:-zcf

f:file,文件,f 的后面必须是压缩包文件。所以,这四个选项一起使用时。f 一定是放在最后。如:zxvf

样例:tar zcvf test.tar.gz 1.c 2.c 3.c 4.c把 1.c 2.c 3.c 4.c 压缩成 zcvf test.tar.gz

上面操作,还能够这么写:tar zcvf other.tar.gz *.c(*.c 代表全部的 .c)

解缩使用方法: tar zxvf 压缩包包名

x:代表解压操作

z:指定解压压缩包的格式为 gzip 格式。file.tar.gz

使用方法和创建压缩包使用方法一样。选项顺序也一样。

样例: tar zxvf new.tar.gz 把 new.tar.gz 解压出来

实际上,“ z ” 參数能够省略,这种话,无论是什么样格式的压缩包都解压:

解压到指定文件夹:-C (大写字母“ C ”)

样例:tar -xvf new.tar.gz -C ./test/ 将 new.tar.gz 解压到当前文件夹下的 test 文件夹下

bz2 格式(压缩包后缀为 .tar.bz2):

和 gzip 格式操作时一样的,差别:bz2 格式用參数“ j ”指定

压缩使用方法: tar jcvf 压缩包包名 文件1 文件2 ...

样例:tar  jcvf  bk.tar.bz2  *.c



解缩使用方法: tar jxvf 压缩包包名

样例: tar  jxvf  bk.tar.bz2



解压到指定文件夹:-C

样例:tar  jxvf  bk.tar.bz2  -C  ./

用户、权限管理:

假设不了解文件权限。请点击《Linux 文件权限简单说明》。

chmod:改变文件权限

chmod 有两种使用格式(字母法与数字法)

字母法:

chmod u/g/o/a  +/-/=  rwx  文件

[ u/g/o/a ] 说明

u : user 表示该文件的全部者 

g : group 表示与该文件的全部者属于同一组( group )者,即用户组 

o : other 表示其它以外的人 

a : all 表示这三者皆是

[ +-= ] 说明 

+ : 添加权限 

- :  撤销权限 

= : 设定权限



[ rwx ] 说明 

r : read 表示可读取 

w : write 表示可写入 

x : excute 表示可运行

详细样例:

chmod o+w file 给文件 file 的其他用户添加写权限

chmod u-r file   给文件 file 的拥有者减去读的权限

chmod g=x file 设置文件 file 的同组用户的权限为可运行。同一时候去除读、写权限

数字法:

“rwx” 这些权限也能够用数字来取代

r:读取权限,数字代号为 "4"

w:写入权限。数字代号为 "2"

x:运行或切换权限。数字代号为 "1"

-:不具不论什么权限。数字代号为 "0"

如运行:chmod u=rwx,g=rx,o=r filename 

就等同于:chmod u=7,g=5,o=4 filename

详细样例:

chmod 751 file

文件全部者:读、写、运行权限

同组用户:读、运行的权限

其他用户:运行的权限

chmod 777 file

全部用户拥有读、写、运行权限

注意:假设想递归全部文件夹加上同样权限。须要加上參数“ -R ”。

如:chmod 777 test -R

递归 test 文件夹下全部文件加 777 权限。

系统管理

ps:查看系统进程

ps -a 查看当前用户的全部进程

ps -e 查看系统中全部的进程

kill:杀死指定进程号的进程,配合 ps 使用

kill  9133   9133 为应用程序所相应的进程号

有些进程不能直接杀死,这时候我们须要加一个參数“ -9 ”,“ -9 ” 代表强制结束。

ifconfig:查看或配置网卡信息

假设。我们仅仅是敲:ifconfig。它会显示全部网卡的信息:

查看指定网卡的信息:ifconfig eth0  ( “ 0 ” 为数字 )

设置 ip :sudo ifconfig eth0 192.168.31.165

sudo 是同意系统管理员让普通用户运行一些或者所有的root命令的一个工具,降低了root 用户的登陆和管理时间,提高了安全性。

ping:測试网络连通性

ping 10.221.0.24  不会自己主动停止。按 “ Ctrl + c ” 就可以停止

ping 10.221.0.24 -c 4 “-c”代表发送包的次数,这里为 4 次

who:查看当前系统登录用户的信息

第一列显示登陆username

第二列显示终端名

第三列显示登陆时间

exit:

假设是图形界面,退出当前终端

假设是使用ssh远程登录。退出登陆账户

shutdown:关机

shutdown -h now 立马关机,当中now相当于时间为0的状态

shutdown -h 20:25 系统在今天的20:25 分会关机

shutdown -h +10 系统再过十分钟后自己主动关机

reboot:重新启动电脑



版权声明:该博客文章。我写的大多是整理。或收集在一个网络。转载请注明出处!

Linux开发环境的搭建和使用——Linux 常用的命令使用的更多相关文章

  1. Linux开发环境的搭建和使用——Linux本必备软件SSH

    SSH 至 Secure Shell 缩写.由 IETF 网络工作组(Network Working Group)开发:SSH 以建立应用层和传输层安全协议中的基础上. SSH 是眼下较可靠,专为远程 ...

  2. 嵌入式Linux开发环境的搭建

    一个.制造u-boot.bin文件:    tar xjf u-boot-1.1.6.tar.bz2    cd u-boot-1.1.6    patch -p1 < ../u-boot-1. ...

  3. 用Windows+VirtualBox搭建嵌入式Linux开发环境

    Windows+VirtualBox的嵌入式Linux开发环境的搭建 最近一直在学习Linux的设备驱动编写,一直是在物理机上安装的Ubuntu进行的,但是在Ubuntu12.04的系统中,已经不能用 ...

  4. Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2]

    Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2] 2015-07   北京海淀区  ...

  5. 使用window10系统搭建完善的Linux开发环境

    https://juejin.im/post/5d22e46ee51d45775746b9b1 导读 在使用window系统开发时由于系统环境和线上环境不一致可能导致各种问题,以及部分扩展库只支持li ...

  6. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  7. Linux环境下Android开发环境的搭建

    本文主要介绍在Ubuntu下Android开发环境的搭建,所使用的IDE为Eclipse(Android Studio同理,且可省去配置SDK以及安装adt插件的步骤). 1.安装JDK (1)JDK ...

  8. Virtualbox+UbuntuServer+Xshell搭建Linux开发环境

    需求背景 嵌入式开发环境以编译服务器(Linux系统)为核心, 开发人员较多使用Windows系统, 通过若干工具, 可以实现开发人员使用Windows的开发工具,编写代码,然后在Linux系统上编译 ...

  9. 嵌入式Linux开发——内容介绍与开发环境的搭建

    嵌入式Linux开发步骤 设计自己的硬件系统 编写Bootloader 裁剪自己的Linux内核 开发移植设备驱动 构建根文件系统 开发应用程序 嵌入式Linux学习要点 熟练使用开发工具和相关指令集 ...

随机推荐

  1. python 正则表达式汇总

    一. 正则表达式基础 1.1.概念介绍 正则表达式是用于处理字符串的强大工具,它并不是Python的一部分. 其他编程语言中也有正则表达式的概念,区别只在于不同的编程语言实现支持的语法数量不同. 它拥 ...

  2. 在 Windows 下远程桌面连接 Linux - VNC 篇

    VNC是由AT&T试验室开发,是一款优秀的远程控制工具软件,后来以GPL授权的形式开源.经过几年的发展,现在的VNC已经不单指某个软件,而是一类软件的通称.下面介绍Linux下常用的两个VNC ...

  3. Android的BUG(三) - 广为人知的诟病:频繁重启问题

    使用过Android的同学,尤其是用过山寨pad,应该对Android的重启问题印象深刻吧.Android由于其设计的复杂性,可能会使得系统在不经意时陷入异常状态,因此Android设计了一套看门狗机 ...

  4. oracle expdp和impdp使用例子

    情景: 由于生产需求,需要把rmtel用户的数据完全复制一份给rmtel_xzy,但排除rmtel用户 ('CAB_JJXPORT_TAB','T_SERVICEXX','TB_CROSSCONNEC ...

  5. 利用xshell密钥管理服务器远程登录+VIM dd命令操作之伤之再伤

    1.打开Xshell界面,中文界面方便操作,菜单栏:工具——新建用户密钥生成向导 2.密钥类型选择RSA,密钥长度选择2048位,单击下一步继续: 3.很快生成公钥对,单击下一步继续: 4.密钥名称可 ...

  6. JAVA实现AES的加密和解密算法

    原文 JAVA实现AES的加密和解密算法 import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import ja ...

  7. WCF技术剖析之二十七: 如何将一个服务发布成WSDL[编程篇]

    原文:WCF技术剖析之二十七: 如何将一个服务发布成WSDL[编程篇] 对于WCF服务端元数据架构体系来说,通过MetadataExporter将服务的终结点导出成MetadataSet(参考< ...

  8. 只启动一个zookeeper配置 server1只需要配置一个

    [root@wx03 conf]# cat zoo.cfg # The number of milliseconds of each tick tickTime=2000 # The number o ...

  9. MVC:Controller向View传值方式总结

    Controller向View传值方式总结 总结发现ASP.NET MVC中Controller向View传值的方式共有6种,分别是: ViewBag ViewData TempData 向普通Vie ...

  10. Linux入门:文件权限、用户、用户组(比较清楚)

    单个文件名或目录名长度不超过255字符: 文件或目录的绝对路径长度不超过4096字符:   一.文件所有者与用户组     一个文件有很多属性,包括文件类型.文件权限.文件隐藏权限.文件所有者.用户组 ...