Linux开发环境的搭建和使用——Linux 常用的命令使用
概要
视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完毕了窃取资料的任务。
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的文本。
经常使用命令
-l:列表显示
-a:显示全部文件(隐藏文件以“ . ”开头)
-h:配合 -l 以人性化的方式显示文件大小
cd .. 可进入上一层文件夹
cd - 可进入上一个进入的文件夹
cd ~ 可进入用户的家文件夹 ( ~:代指家文件夹,家文件夹指 /home 里的用户文件夹,不是纯粹的 /home 文件夹 )
pwd:显示当前工作文件夹的绝对路径
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 常用的命令使用的更多相关文章
- Linux开发环境的搭建和使用——Linux本必备软件SSH
SSH 至 Secure Shell 缩写.由 IETF 网络工作组(Network Working Group)开发:SSH 以建立应用层和传输层安全协议中的基础上. SSH 是眼下较可靠,专为远程 ...
- 嵌入式Linux开发环境的搭建
一个.制造u-boot.bin文件: tar xjf u-boot-1.1.6.tar.bz2 cd u-boot-1.1.6 patch -p1 < ../u-boot-1. ...
- 用Windows+VirtualBox搭建嵌入式Linux开发环境
Windows+VirtualBox的嵌入式Linux开发环境的搭建 最近一直在学习Linux的设备驱动编写,一直是在物理机上安装的Ubuntu进行的,但是在Ubuntu12.04的系统中,已经不能用 ...
- 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 北京海淀区 ...
- 使用window10系统搭建完善的Linux开发环境
https://juejin.im/post/5d22e46ee51d45775746b9b1 导读 在使用window系统开发时由于系统环境和线上环境不一致可能导致各种问题,以及部分扩展库只支持li ...
- Linux学习心得之 Linux下命令行Android开发环境的搭建
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...
- Linux环境下Android开发环境的搭建
本文主要介绍在Ubuntu下Android开发环境的搭建,所使用的IDE为Eclipse(Android Studio同理,且可省去配置SDK以及安装adt插件的步骤). 1.安装JDK (1)JDK ...
- Virtualbox+UbuntuServer+Xshell搭建Linux开发环境
需求背景 嵌入式开发环境以编译服务器(Linux系统)为核心, 开发人员较多使用Windows系统, 通过若干工具, 可以实现开发人员使用Windows的开发工具,编写代码,然后在Linux系统上编译 ...
- 嵌入式Linux开发——内容介绍与开发环境的搭建
嵌入式Linux开发步骤 设计自己的硬件系统 编写Bootloader 裁剪自己的Linux内核 开发移植设备驱动 构建根文件系统 开发应用程序 嵌入式Linux学习要点 熟练使用开发工具和相关指令集 ...
随机推荐
- php 父类调用子类方法和成员
在C和C++里,父类都不允许调用子类的方法,但在php里可以.下面是一个调用的例子: <?php abstract class Animal { protected $name; public ...
- 查看电脑已安装的Jdk的位数
查看自己电脑已安装的Jdk的位数的方法: public class ShowJdkBit { public static void main(String[] args) { String arch ...
- 使用Visual Studio将Objective-C编译C++
编译器支持 谷歌和苹果应用Clang由于他们的C++前端.为了使他们的执行代码Windows上,微软不得不Visual C++C2和Clang结合起来. (Clang是一个C语言.C++.Object ...
- c++ 重载,覆盖,重定义 2
前一篇 http://www.cnblogs.com/iois/p/4085173.html 写有些地方不够准确,重新整理了一遍 函数重载(Function Overloading) C++允许同一范 ...
- 回归基础从新认识——HTML+CSS
前言 这段时间工作没那么繁杂,索性就想说来套系统的学习,之前去面试的时候,有被问及些基础的知识,居然回答不上来,也不能说是回答不上吧,回答的不全面.前端群上问了那个机构比较好,选择了慕课网.看了一段时 ...
- jquery $.post
jQuery.post() jQuery.post( url [, data ] [, success ] [, dataType ] )Returns:jqXHR Description: Load ...
- Apache Flink
Flink 剖析 1.概述 在如今数据爆炸的时代,企业的数据量与日俱增,大数据产品层出不穷.今天给大家分享一款产品—— Apache Flink,目前,已是 Apache 顶级项目之一.那么,接下来, ...
- WCF技术剖析之十六:数据契约的等效性和版本控制
原文:WCF技术剖析之十六:数据契约的等效性和版本控制 数据契约是对用于交换的数据结构的描述,是数据序列化和反序列化的依据.在一个WCF应用中,客户端和服务端必须通过等效的数据契约方能进行有效的数据交 ...
- WebBrowser与IE的关系,如何设置WebBrowser工作在IE9模式下?
原文 WebBrowser与IE的关系,如何设置WebBrowser工作在IE9模式下? 一.问题的提出 偶然发现,Winform里的WebBrowser和IE实际安装的版本似乎并不同步,很有趣! 下 ...
- 使用ItextSharp产PDF完整操作
原文 使用ItextSharp产PDF完整操作 记得上回有写到用C#操作Excel(.net 4.0) 很多朋友说推荐用NPOI,的确,用微软自带的操作execl会有很大的问题.客户的主机不愿意安装e ...