Linux入门 (笔记)
Man can conquer nature.
"人定胜天"
一、基本操作
1、重要快捷键
| Tab | 补全命令、目录、参数、文件名等 |
| Ctrl+c | 强制终止当前的程序 |
| Ctrl+d | 键盘输入结束或退出终端 |
| Ctrl+z | 将当前程序放到后台运行,恢复为前台使用fg |
| Ctrl+a | 将光标移至输入行首,相当于Home键 |
| Ctrl+e | 将光标移至输入行末,相当于End键 |
| Ctrl+k | 删除从光标所在位置到行末 |
| Alt+Backspace | 向前删除一个单词 |
| Shift+PgUp | 将终端显示向上滚动 |
| Shift+PgDn | 将终端显示向下滚动 |
| 方向键"上"键 |
恢复之前输入过的命令 |
2、通配符
| * | 匹配0各或多个字符 |
| ? | 匹配任意一个字符 |
| [list] | 匹配list中的任意单一字符 |
| [!list] | 匹配除list中字符外的任意单一字符 |
| [c1-c2] | 匹配c1-c2中任意单一字符 如:[0-9][a-z] |
| [str1,str2,...] | 匹配str1或str2(或更多)其一字符串 |
| {c1..c2} | 匹配c1-c2中全部字符 如{1..10},注意是每个字符匹配一次 |
3、man
man <name> #查看name指定内容的详细说明,可以是命令,C库函数等,具体见man man
二、用户及文件权限管理
1、用户管理
who [选项]... [ 文件 | 参数1 参数2 ] #显示当前已登录的用户信息
sudo adduser <name> #添加新用户
sudo passwd <name> #为用户设置密码,不加<name>则设置当前用户的密码
su <name> #切换登录用户
groups <name> #查看用户属于哪些用户组
sudo usermod -G <g-name> <u-name> #为用户添加用户组
sudo deluser <u-name> --remove-home #删除用户并删除该用户的Home目录
2、文件权限
ls [选项]... [文件]... #列出文件的信息
chown [选项]... [所有者] 文件名 #修改文件的所有者
chgrp [选项]... 用户组 文件... #修改文件所属的用户组
chmod [选项]... 模式... 文件... #修改文件的读写执行权限
三、文件和目录操作
1、目录操作
tree <name> #以树形结构显示目录的结构,注意tree工具需要自行安装
cd <name> #切换到指定目录
pwd #获取当前目录的绝对路径
mkdir <name> #创建新目录
2、文件操作
touch <name> #创建空白文件
cp <name> <p-name> #复制文件到指定目录
rm [选项]... <name> #删除文件或空目录,加上-r参数可以删除非空目录
mv <name> <p-name> #移动文件到指定目录,或者修改文件名
cat [选项] <name> #正序打印文件内容
tac [选项] <name> #倒序打印文件内容
nl [选项] <name> #添加行号并打印文件内容
more <name> #分页查看文件内容
less <name> #类似于more
head <name> #查看文件开头的内容
tail <name> #类似于head但是是从末尾开始
file <name> #查看文件类型
四、环境变量与文件查找
1、变量
declare var #声明变量
var=XXX #给变量赋值
echo $var #打印变量内容
unset var #删除一个环境变量
2、环境变量
set #显示当前shell所有环境变量
env #显示与当前用户相关的环境变量
export #显示从shell中导出成环境变量的变量
3、命令的查找路径与顺序
echo $PATH #输出的内容为系统查找命令的各个路径,按照排列的顺序查找并调用找到的第一个命令
4、添加自定义路径到PATH
PATH=$PATH:path-name #临时修改当前shell的PATH变量
5、文件查找
whereis <name> #搜索二进制文件、man帮助文件或者源代码文件
locate <name> #查找指定目录下不同类型的文件
which <name> #用来确定是否安装了某个指定的软件
find [path] [opt] [act] #在指定目录下搜索满足指定条件的文件
五、文件打包与解压缩
常用的文件压缩打包/解压缩工具:
zip / unzip
rar
tar
具体参见man手册
六、文件系统操作与磁盘管理
1、查看磁盘和目录容量
df #查看磁盘容量,常加上 -h 参数以易读的方式打印
2、磁盘操作
dd #用于转换和复制文件
mount [opt] [sour] [dir] #挂在磁盘到指定目录
umount [dir] #卸载已挂载的磁盘
sudo fdisk [opt] #查看硬盘分区表信息
七、命令执行顺序控制与管道
1、命令执行顺序
cmd1;cmd2;cmd3;... #按顺序执行cmd1,cmd2,...
cmd1 && cmd2 #只有cmd1执行成功才执行cmd2
cmd1 || cmd2 #只有cmd1执行失败才执行cmd2
cmd1 | cmd2 #将cmd1的输出作为cmd2的输入
2、常用到管道的命令
cut #打印每一行的某一字段
grep #在文本中或标准输入中查找匹配字符串
wc #统计并输出一个文件中行、单词和字节的数目
sort #将输入按照一定方式排序后输出
uniq #用于过滤或者输出重复行
八、简单文本处理
1、文本处理命令
tr #删除或替换一段文本信息中的某些文字
col #将Tab换成对等数量的空格,或者反转这个操作
join #将两个文件中包含相同内容的那一行合并在一起
paste #将多个文件合并在一起,并以tab隔开
九、数据流重定向
1、简单重定向
cmd > name #将cmd1执行的结果重定向到指定文件或指定设备中,替换原来的内容
cmd >> name #类似于 > ,但是这里是追加到文件末尾,而不是替换
cmd < name #方向与 > 相反
cmd << name #方向与 >> 相反
2、重定向到多个文件
cmd | tee name1 name2 ... #将cmd1的执行结果重定向到标准输出和指定文件中
3、完全屏蔽命令输出
cmd > /dev/null #将命令的执行结果导入"黑洞"文件中
十、软件安装
1、在线安装
sudo apt-get [工具] #用于安装、更新、卸载等操作的公共程序集
| 工具 | 说明 |
| install | 后面加上软件包名,用于安装一个软件包 |
| update | 更新本地软件 |
| upgrade | 升级本地可更新的全部软件包,但存在依赖关系时不会升级 |
| remove | 移除已安装的软件包,包括与被移除软件有依赖关系的软件包,但不包含配置文件 |
| purge | 移除软件包和配置文件 |
| clean | 移除下载到本地的已经安装好的软件包 |
注:本文只是作为笔者学习过程中的一份学习笔记,更多更详细的内容请参见相关书籍或相关文档
Linux入门 (笔记)的更多相关文章
- Linux 入门笔记
一开始对linux总有些抵触,黑黑的命令框不知道如何下手,这次因为工作交接的缘故需要负责之前同事的Node后端部分,node,redis这些都是部署在Linux上的,看了几次运维的同学噼里啪啦的敲命令 ...
- Linux入门笔记
1.Linux常用快捷键 按键 作用 Ctrl+d 键盘输入结束或退出终端 Ctrl+s 暂停当前程序,暂停后按下任意键恢复运行 Ctrl+z 将当前程序放到后台运行,恢复到前台为命令fg Ctrl ...
- 【苏勇老师Linux 入门笔记】网络基础
IP 地址 IP 编制时一个双层编制方案,一个 IP 地址标示一个主机 (或一个网卡接口). 一个 IP 地址分为两个部分:网络部分(所属区域)和主机部分(标示区域中的哪个主机).IPv4 共32位, ...
- Linux基础入门笔记
今天带来Linux入门的一些基础的笔记,科班出身的同学们,Linux已经成为了必修课了,下面我带来关于Linux的相关入门知识以及Linux简单的介绍! Linux内核最初只是由芬兰人林纳斯·托瓦兹( ...
- 每天成长一点---WEB前端学习入门笔记
WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...
- MySQL入门笔记
MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: · rpm包形式 · 通用二进制 ...
- 20160127 linux 学习笔记
Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于 ...
- Linux入门基础知识
注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MI ...
- Docker入门笔记
Docker入门笔记 随笔记录初学Docker遇到的问题, 以免下次再犯. 本机系统Ubuntu18.04 安装 Docker有2个版本 Community Edition (CE) 社区版(免费) ...
随机推荐
- 玩玩SPARK
没有SCALA的东东,玩不起哈. ./spark-shell 从文件生成一个DRIVER? val logFile = sc.textFile("hdfs://192.168.14.51:9 ...
- jqGrid中多选
原文地址;http://www.cnblogs.com/josechuanmin/archive/2013/05/19/3087138.html 在jqGrid中设置multiselect: true ...
- date命令使用总结【转载】
本文转载自:http://blog.sina.com.cn/s/blog_674b5aae0100o0w9.html 由于跨年.跨月.闰平年等特殊性,在日常编程过程中对日期的处理总是异常麻烦.目前,各 ...
- L1签证_百度百科
L1签证_百度百科 L1签证
- jquery 定时器
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...
- Photography theory: a beginner's guide(telegraph.co.uk)
By Diane Smyth, Tim Clark, Rachel Segal Hamilton and Lewis Bush 11:00AM BST 09 Jun 2014 Have you r ...
- IE的CSS相关的BUG(整理一)
本来不想弄这个ie的bug的,真的很想让它快点死掉,可是事与愿违啊,没办法,还是贴出来,以备自用. 这个网页(http://haslayout.net/css/index)上例举了所有的IE和CSS相 ...
- VS2010 使用TeeChart画图控件 - 之二 - 绘制图形(折线图,柱状图)
1.前期准备 详细可见VS2010 使用TeeChart画图控件 - 之中的一个 控件和类的导入 1. 1 加入TeeChart控件,给控件加入变量m_TeeChart 加入TeeChart控件,右击 ...
- VS2010每次编译都重新编译整个工程的解决方案
在使用VS2010编译C++程序的时候,每次修改工程中的某一个文件,点击“生成-仅用于项目-仅生成**”时,往往都是整个工程都需要重新编译一遍.由于这个工程代码量太大,每次编译完成都需要将近10分 ...
- RDIFramework.NET平台代码生成器V1.0发布(提供下载)
RDIFramework.NET平台代码生成器V1.0发布(提供下载) RDIFramework.NET(.NET快速开发整合框架)框架做为信息化系统快速开发.整合的框架,其目的一至是给用户和开发 ...