@计算机大白平凡学习 之路
千里之行,始于足上。只有基础扎实+思路清析,写脚本才没有问题。多看一些牛人大咖写的脚本。看人家的思路与结构,会收益良多, 一起努力学习吧!
书
免费提供最新Linux技术教程书籍为开源技术爱好者努力做得更多更好
课程
马哥教育Linux专题课】
马哥教育2021-小白8小时掌握运维自动化Ansible神器【运维必备】
马哥教育2021-8小时拿下LVS企业级实战【运维必备核心技能】
马哥教育2021-负载均衡利器-Tengine、Haproxy入门到精通【加薪必备】
马哥教育2021-新手快速掌握Nginx无敌教程【10W+人学习,98%好评】
【马哥教育python课程】
马哥教育2021-小白必学Python超详细实战教程典藏版【10W+人学习,98%好评】
马哥教育-Python-WEB-SSH实战训练营
Python/Python开发/Python入门/Python学习/Python编程/Python基础
马哥 Python 实战教程:Python Django 从零学会写网站(持续更新)
马哥Python实战教程:Python网络编程实现群聊软件
【云原生专题-马哥亲授】
马哥教育2021-基于Kubernetes和Jenkins的GitOps实战
马哥教育2021-Ceph分布式存储系统快速入门【涨薪30%+】
马哥教育2021-小白快速通关Envoy核心技术【马哥亲授】
马哥教育2021-从0开始学ISTIO【马哥亲授】
常见的执行Linux命令的格式是下面这样的
命令名称 [命令参数] [命令对象]
- 命令名称:就是语法中的**“动词”**,表达的是想要做的事情,例如创建用户、查看文件、重启系统等 *** 作。
- 命令参数:用于对命令进行调整,让“修改”过的命令能更好地贴合工作需求,达到事半功倍的效果。就像买衣服一样,衣服的尺码总会感觉偏大或偏小,要么只能将就着穿,要么就再裁剪修改一下,而这种对命令进行“裁剪”的行为就是加参数。
命令名称、命令参数与命令对象之间要用空格进行分隔,且字母严格区分大小写。 |
将可选择的、可加或可不加的、非必需的参数使用中括号引起来; 而命令所要求的、必须有的参数或对象值,则不带中括号 |
如何让脚本执行呢?
命令是从上而下,由左到右分析并执行的,命令与参数之前一些空格或者tab或者空白行都会被忽略。# 符号,可以做为注释批注。后面的所有命令等等,都不会分析执行。
写脚本,
- 先明白你要干什么事情。
- 哪些命令可以帮你实现。达到你想要结果。
- 过程中注意每个命令的细节。
- 功能需求完成之后,通过历史命令,把过程好好整理一下。按序及格式放到.sh文件里。其余的呢?加上判断,循环。数据重定向。
- 可以模块化,采用函数的方式使得更有条理,功能分明。
- 在这过程当中,你可以找到当中的共性,设置为参数。增加脚本的易用性。
- 前提,脚本得有读和执行的权限。
- 直接执行,用脚本的绝对路径,在终端,直接输入就可以;
- 对应的相对路径也可以执行;
- 也可把脚本放到环境变量的路径下。
- 还一种是指定bash进程来执行。基本上就这些办法
学会查看 README.md文件
Linux 软件安装-
conda 安装法
-
下载二进制软件安装
-
从源码编译安装
这里整理下Linux用来处理数据文本的命令,以供遗忘时查看
Linux命令大全网- 我们登陆上服务器,然后输入ls 命令:
- echo 命令用于在终端设备上输出字符串或变量提取后的值
- 语法格式:echo [参数] [字符串]
常用参数:
-n | 不输出结尾的换行符 |
---|---|
-e “\b” | 删除前面的一个字符 |
-e “\c” | 结尾不加换行符 |
-e “\n” | 换行,光标移至行首 |
—version | 查看版本信息 |
–help | 查看帮助信息 |
4. which ls可以查看到ls所在的位置
5. `$ which ls`
6. ls其实是保存在/bin/ls这个目录下的。而我们之所以可以随时随地的调用ls,是因为当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找
7. 接下来我们看看当前的环境变量PATH是什么,用echo $PATH可以查看到
8. `$ echo $PATH`
PATH记录的是很多个目录,这些目录以冒号:作分割,为了让大家看的清楚,我们把冒号:替换成\n
$ echo $PATH|tr` :' '\n'
如何修改环境变量
修改环境变量,其实就是对环境变量进行重新赋值
# 下载
wget -c https://XXXXXXXX.tar.gz
# 解压
tar zxvf XXXXXXXX.tar.gz
# 安装
bash XXXXXXXX.sh
这个软件安装好了之后,会在用户的家目录下的生成一个隐藏目录.aspera,需要用ls -a来查看
进一步查看这个目录的结构:
发现它的下下层目录也有一个叫bin的目录,包涵的可执行文件有
$ ls .aspera/connect/bin/
ascp asperaconnect asperaconnect.bin asperacrypt asunprotect
假如我们想像调用ls那样随时随地的调用这个软件的命令,即~/.aspera/connect/bin/目录中的可执行文件,那么就需要把这个路径添加到环境变量里面去,方法是:
export PATH="~/.aspera/connect/bin/:$PATH"
# 注意这里要用双引号,不能用单引号
运行上面这一行命令之后,就可以随时随地得调用了,如:
但是,如果想一劳永逸,我们需要把它写进去.bashrc里面去
.bashrc文件
- .bashrc是一个配置文件,也是一个隐藏文件,存在于用户的家目录~下,需要用ls -a才能查看到,当我们每次登陆服务器时,这个文件就会被执行一次,也就是说文件内的代码会被运行一遍。
- 因此,当我们把export PATH="~/.aspera/connect/bin/:$PATH"这一行命令写入.bashrc后,以后每次登陆服务器,系统就会帮我们把这一行命令执行一次,我们就不能再自行运行了,方法如下:
echo export PATH="~/.aspera/connect/bin/:$PATH" >>.bashrc
- head, tail查看文档头尾。
- -n选项可以指定行数。
- less -SN 用来查阅文档,
- q退出,
- w # 查看用户运行
- ceho $[SHELL] #查看shell 版本
- wc命令默认依次输出单词数、行数、总字符数。查看行数使用 wc -l。 如果存在空行,空行会被计数。
- 可以使用 grep命令实现非空行计数
grep -c "[^ \n\t]" some_data.bed
man命令中常用按键以及作用
按键 | 作用 |
---|---|
空格键 | 向下翻一页 |
PaGe down | 向下翻一页 |
PaGe up | 向上翻一页 |
home | 直接前往首页 |
end | 直接前往尾页 |
/ | 从上至下搜索某个关键词,如“/linux” |
? | 从下至上搜索某个关键词,如“?linux” |
N | 定位到上一个搜索到的关键词 |
n | 定位到下一个搜索到的关键词 |
q | 退出帮助文档 |
在输入命令前就已经存在的“[root@linuxprobe~]#”这部分内容是终端提示符,它用于向用户展示一些基本的信息—当前登录用户名为root,简要的主机名是linuxprobe,所在目录是~(这里的~是指用户家目录,第6章会讲解),#表示管理员身份(如果是$则表示普通用户,相应的权限也会小一些)。 |
14.Tab键 在Bash解释器的快捷键中, 随后敲击了两下Tab键#够实现对命令、参数或文件的内容补全
14. Ctrl+c组合键:## 终止当前进程的运行
15. Ctrl+l组合键:##会清空当前终端中已有的内容(相当于清屏 *** 作)。
16. date命令用于显示或设置系统的时间与日期
参数 | 作用 |
---|---|
%S 秒 | (00~59) |
%M 分钟 | (00~59) |
%H | 小时 |
%I | 小时 |
%m | 月份 |
%p | 显示出AM或PM |
%a | 缩写的工作日名称(例如:Sun) |
%A | 完整的工作日名称(例如:Sunday) |
%b | 缩写的月份名称(例如:Jan) |
%B | 完整的月份名称(例如:January) |
%q | 季度(1~4) |
%y | 简写年份(例如:20) |
%Y | 完整年份(例如:2020) |
%d | 本月中的第几天 |
%j | 今年中的第几天 date “+%j” |
%n | 换行符(相当于按下回车键) |
%t | 跳格(相当于按下Tab键) |
date “+%Y-%m-%d %H:%M:%S” |
- wget命令用于在终端命令行中下载网络文件,英文全称为“web get”,语法格式为“wget [参数] 网址”。
wget命令 | 参数以及作用 |
---|---|
-c | 断点续传 |
-b | 后台下载模式 |
-P | 下载到指定目录 |
-t | 最大尝试次数 |
-p | 下载页面内所有资源,包括图片、视频等 |
-r | 递归下载 |
- ps命令用于查看系统中的进程状态,英文全称为“processes”,语法格式为“ps [参数]”
ps -a | 进程状态 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
USER | PID | %CPU | %MEM | VSZ | RSS | TTY | STAT | START | TIME | COMMAND |
进程的所有者 | 进程ID号 | 运算器占用率 | 内存占用率 | 虚拟内存使用量(单位是KB) | 占用的固定内存量(单位是KB) | 所在终端 | 进程状态 | 被启动的时间 | 实际使用CPU的时间 | 命令名称与参数 |
-
pstree命令用于以树状图的形式展示进程之间的关系,英文全称为“process tree”,输入该命令后按回车键执行即可。
-
top命令用于动态地监视进程活动及系统负载等信息,输入该命令后按回车键执行即可。
-
第1行:系统时间、运行时间、登录终端数、系统负载(3个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
-
第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
-
第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“99.9 id”意味着有99.9%的CPU处理器资源处于空闲。
-
第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。
-
第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。
-
-
nice命令用于调整进程的优先级,语法格式为“nice优先级数字 服务名称”
-
ifconfig命令用于获取网卡配置与网络状态等信息,英文全称为
“interface config”,语法格式为“ifconfig [参数] [网络设备]”。- 使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址(又称为MAC地址),以及RX、TX的接收数据包与发送数据包的个数及累计流量(即下面加粗的信息内容):
-
uname命令用于查看系统内核版本与系统架构等信息,英文全称为“unix
name”,语法格式为“uname [-a]”。- uptime命令真的很棒,它可以显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟、5分钟、15分钟内的压力情况(下面加粗的信息部分),负载值越低越好:
-
who命令用于查看当前登入主机的用户终端信息,输入该命令后按回车键执行即可。
-
last命令用于调取主机的被访记录,输入该命令后按回车键执行即可。.
-
ping命令用于测试主机之间的网络连通性,语法格式为“ping [参数] 主机地址”
-
tracepath命令用于显示数据包到达目的主机时途中经过的所有路由信息,语法格式为“tracepath [参数] 域名”。
-
netstat命令用于显示如网络连接、路由表、接口状态等的网络相关信息,英文全称为“network status”,语法格式为“netstat [参数]”。
-
history命令用于显示执行过的命令历史,语法格式为“history [-c]”。
- 历史命令会被保存到用户家目录中的.bash_history文件中。Linux系统中以点(.)开头的文件均代表隐藏文件,这些文件大多数为系统服务文件,可以用cat命令查看其文件内容:
-
sosreport命令用于收集系统配置及架构信息并输出诊断文档,输入该命令后按回车键执行即可。
**
查找定位文件命令**
-
pwd命令用于显示用户当前所处的工作目录,英文全称为“print working directory”,输入该命令后按回车键执行即可。
-
cd命令用于切换当前的工作路径,英文全称为“change directory”,语法格
“cd [参数] [目录]”。这个命令应该是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。除了常见的切换目录方式,还可以使用“cd -”命令返回到上一次所处的目录,使用“cd..”命令进入上级目录,以及使用“cd~”命令切换到当前用户的家目录,抑或使用“cd~username”命令切换到其他用户的家目录(就像在游戏中使用了“回城”技能一样)。例如,使用下述的cd命令切换进/etc目录中:
-
ls命令用于显示目录中的文件信息,英文全称为“list”,语法格式为“ls [参数] [文件名称]”。
所处的工作目录不同,当前工作目录下能看到的文件肯定也不同。使用ls命令的-a参数可以看到全部文件(包括隐藏文件),使用-l参数可以查看文件的属性、大小等详细信息。将这两个参数整合之后,再执行ls命令即可查看当前目录中的所有文件并输出这些文件的属性信息:式为
-
tree命令用于以树状图的形式列出目录内容及结构,输入该命令后按回车键执行即可。
-
find命令用于按照指定条件来查找文件所对应的位置,语法格式为“find [查找范围] 寻找条件”。
-
locate命令用于按照名称快速搜索文件所对应的位置,语法格式为“locate文件名称”。
-
which命令用于按照指定名称快速搜索二进制程序(命令)所对应的位置,语法格式为“which命令名称”。
- cat命令用于查看纯文本文件(内容较少的),英文全称为“concatenate”,语法格式为“cat [参数] 文件名称”。
linux命令行文本 *** 作一文就够
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)