初学者需要了解Linux这么多
Linux常见命令操作以及基本知识
- Linux文件系统结构
- 根目录文件下各个文件夹作用
- Linux Shell基本格式和常用命令
- 目录命令
- 文件命令
- 常用命令
- 其他命令
- Linux 文件管理
- linux 文件访问
- 文本编辑器vi
- 文件权限
- Linux Shell 元字符
- 通配符
- 重定向符
- 命令链接符
- 变量
- 命令替换
- 进程及进程管理
- 工具
在Linux配置上配置Hadoop时,需要提前学习一下Linux上的操作命令,一下所有命令均在CentOS7上成功实验
Linux文件系统结构
- 普通文件: /etc/hosts
- 目录文件:/home
- 特殊文件:/dev/cdrom (通常指硬件设备,比如光驱,硬盘等)
- 注意Linux下一切皆是文件
根目录文件下各个文件夹作用
- usr:useable system resource,绝大多数系统的命令,和系统库
- dev:存放逻辑设备名称,比如cdrom,sda,sdb,sda1,sda2
注意:
有n个硬盘就成为sda,sdb,sdc,…
每个硬盘有分区sda1,sda2,… - etc:操作系统配置文件集中存放的目录
yum文件位置:/etc/yum.repos.d/
网卡配置文件:/etc/sysconfig/network-scripts/ - sbin:bin即使binary的意思即二进制文件,sbin是符号连接,会跳转到user下的bin,储存常用命令,sbin是超级用户(super),bin是普通用户。
- home:用户的宿主目录,Linux是多用户管理系统,home下,每个用户都有自己的宿主目录
- var:翻译是变化的,log日志文件,mail用户文件手法都在这个里面
- tmp:临时文件,可以定时删一删,后期配Hadoop时也要配临时文件
- opt:相当于option,可选,装第三方软件工具,比如Hadoop 。
- proc:代表process,代表系统目前进程的影像,可以看到一堆ID
Linux Shell基本格式和常用命令
目录命令
- ls 查看当前路径下的文件
- ls / 查看根路径下的文件
- ls -l / 详细的查看根路径下的文件
- ls -R d1,递归的查看d1目录文件下的所有目录
- 详细查看文件的时候
d开头的是directory(目录)
l开头的是符号链接,俗称快捷方式
-开头的是普通文件 - ls的标准格式是:
ls 选项 参数,比如:ls -l f1
选项也可以为多个选项,比如:ls -l -a f1,a该选项的意思是查看所有文件,可以查看到多.号开头的隐藏文件。而如果把a换成A,则不显示.和…文件,因为在Linux中,一切皆文件,这二者表示当前目录文件和父亲目录文件。 - ls -la 命令也成立,表示两个选项可以连着写
- pwd 输出当前工作目录
- which ls 查找ls放在哪个文件夹下
- cd 到指定路径文件夹下
- 例:cd /etc,到根目录下的etc文件夹下
- cd - ,快速回到前一个目录
- cd ,直接回到宿主目录
- cd ~,直接回到宿主目录
- mkdir 创建目录文件
- mkdir d1,在当前文件夹下创建d1目录
- mkdir -p d3/d4,同时在d3,d3建好后,在d3里面建立d4文件目录,-p表示当父目录不存在时先建立父目录,如果不加-p,并且父目录不存在的话,会报错
- rmdir d1,删除空目录d1
文件命令
- touch f1 创建文件f1
- cp 复制文件
- cp f1 f2,
- cat
- cat f1,查看f1文件
- cat -vte f3
- cat -A f3,-vte和-A都是查看包括隐藏字符在内的文件,比如control + k,或者tab,或者空格
- more 查看长文件,会分页显示
- mv
- mv f1 d1,把f1文件移动到当前目录下的d1目录里,作用:移动文件相当于剪切粘贴
- mv f2 f3,把f2文件改名为f3,相当于重命名的作用
- rm -r d1 d2 d3 d4 d5,删除文件,-r,表示递归的删除
- rm -r d*, 通配符,删除d开头的所有文件
- ln 链接文件
- ln -s /opt/hadoop /root/hadoop,访问root下的hadoop,可以直接转到opt下的hadoop,类似于快捷方式
- 上述链接文件可以用语句 ls -ld /root/hadoop 查看链接信息
常用命令
- exit 退出,登出
- logout 退出,并会重现登录,
- passwd 更改当前密码
- date 查询时间
- date + “%Y-%M-%D”,查看年月日
- cal,查看年月日
- cal,9,9999,查询9999年9月份
- echo 相当于c语言的print,
- 例子:echo “Hello World”
- echo “hello world” > f1,该符号">"表示输出重定向,即把字符串输出到f1文件中
其他命令
- man ,manual手册的意思,比如输入man ls ,
则会看到ls选项的手册,向下翻页回车,j向下,k向上,f,b是一屏一屏的翻页,如果想要查找特定参数,先输入/,则左下角出现/,输入-l,按回车,光标会在手册中查找,按n键,查找下一个匹配的值, - shutdown 关机,注:只有在root下才能关机,会在一分钟后关机,如果不想关机,输入shutdown -c,如果立刻关机,则输入shutdown now
- control c,同时按这两个键,可以暂停当前的进程
Linux 文件管理
linux 文件访问
- 绝对路径(以/开头访问文件)
例子:
/home/team01/test1
/home/team03/pgms/suba - 相对路径(假设当前目录是/home/team01)
例子:
test1 or ./test1
…/team03/pgms/suba 注:双点号表示父目录
…/…/dev/lp0 注:表示爷爷目录
文本编辑器vi
- vi f1,进入f1文件的命令模式,此时无法对文件进行修改,按字母i进入insert插入模式,即可对文件进行修改
- 保存文档:首先按Esc键,在按shift,和两下z,即可保存并退出
- 上下左右移动光标:可以小键盘上下左右,也可以hjkl左下上右
- x:删除字符
- nx:删除n个字符
- d$:删除光标到行尾的字符,d代表delete,美元符号代表行尾
- d0: 删除光标到行首的字符,0代表行首
- dd:删除一整行字符,并缓存到缓冲区,类似于剪切
- a:在当前光标后面追加所需要的字符
- A:在当先光标所在的行尾追加字符
- yy:复制当前行
- p:粘贴到当前行的下一行
- P:粘贴到当前行的上一行
- wq:保存并推出
- w f2:将编辑内容保存到f2文件里
- q!:退出并不保存
文件权限
- 在上面提到的:ls -l命令,执行这个命令后会出现权限的信息,
举个例子:
drwxrwxr-x hadoop hadoop
-rw-rw-r-- hadoop hadoop
-rw-rw-r-- hadoop hadoop
解释:r代表read是可读权限,w代表write代表可写权限,x代表excute,第一位字母代表含义在上文已经解释过,往后第一个hadoop是文件的所有者,它所拥有第二位到第五位的权限,第二个hadoop代表和文件拥有者同组的用户,它享有第六到第八位权限,而其他用户(命令结果不会反馈)则享有最后三位权限 - chmod
- chmod u+x f1,表示对f1文件ouser增加执行权
- chmod go+x f1,表示对f1文件group用户和other都增加执行权,但是增加可执行全就并不意味着可执行
- chmod go-rwx f1,表示对f1文件group用户和other用户都减少读写执行权限
- chmod a=rw f1,表示对f1文件所有用户的权限都赋值为读写
- chmod u=rw,g=r,o= f1,表示对f1文件user用户赋值读写权限,group用户赋值读权限,other用户赋值空权限
- chmod 755 f1,755的二进制数表示为(111)2,(101)2,(101)2,表示user用户有读写执行权限,group用户有读执行权限,other用户有读执行权限
- chown
- chown hadoop f2,把f2的user用户改成hadoop
- chown hadoop:hadoop f1,把f1的user用户改成hadoop,并把group用户也改成hadoop
- chown -R hadoop:hadoop d1,R表示递归,该语句能把d1包括d1下的所有子目录和子文件的user用户和group用户都改成hadoop
Linux Shell 元字符
通配符
- *
- ls f* :表示查找以f开头的所有文件
- ls *1:查找以1结尾的文件
- ?
- ls f?:表示查找以f开头的后面加一个字母的文件
- [ ]
- ls f[123]:方括号表示匹配括号内的一个字就行
- -
- ls f[a-zA-Z ]:表示查找f开头的后面接一个字母的文件,需要注意的是,这里减号前后的顺序不能变,z-a就会报错
- !
- ls f[!123]:!表示取反,该语句表示查找f后面不是123的,并且仅是一个字母的文件
重定向符
- >
- echo hello > f1 ,以覆盖的方式写入
- echo hello >> f1,以追加的方式写入
- data 2> errlog,2>是错误重定向,该语句的作用是将输入data命令,执行的错误日志返回到errlog中
- data 2> /dev/null,/dev/null表示空,可以理解为垃圾粉碎机,无底洞,扔到这个地址的所有命令都不显示
- date >/dev/null 2>/del/null,表示,不管执行结果为正确还是错误都不显示输出结果
这句语句效果与"date 1>/dev/null 2>&1"相同
- echo $?,表示前一个命令的执行结果是0还是非0,如果是0,则表示成功
命令链接符
- 顺序执行
- date ; cal ,先执行第一个语句在执行第二个语句,如果第一个语句执行失败,第二个语句还是会执行
- 条件执行
- date && cal,先执行第一个语句,当第一个语句执行成功时,再执行第二个语句 ,否则不执行
- date || cal,先执行第一个语句,当第一个语句执行失败时,再执行第二个语句,否则不执行
- 管道
- ls -l | wc -l,管道表示前一个命令的结果输出到后一个命令中,wc是word count的意思,计算前一个命令一共有几行
- ls -l | grep ^- wc -l,表示查找当前目录下有多少文件,grep ^- wc -l,就是数一下以-开头的结果有几行
变量
- let和引用变量$
- 例子
- a=10
- b=20
- let c=a+b
- echo $c
- 即可查看到系统输出30
- echo $HOME,查看宿主命令
- echo $PWD,查看当前路径命令
- 例子
- export
- export JAVA_HOME=/usr/java/jdk_1.8.0-131
- 用export定义的进程在子进程里还可以使用
- set,查看变量
- unset,删除变量
- readonly
- readonly a=100,定义只读变量a,在之后a不可修改,如果要释放掉a的资源,只能exit
命令替换
- 将命令的运行结果保存到变量或作为命令的参数
- variable= $(command)或 varialbe=‘command’
- year=$(date +%y)
进程及进程管理
- ps(process status)进程状态
- kill (杀进程)
- kill 4739 ,关闭进程ID号为4739的进程
- ps -ef | grep sleep,查找包含sleep的所有进程
- kill -9 4739,强制杀进程
- Ctrl + z,发送SIGSTOP信号,进程知识被停止,再送SIGCONT信号,进程就继续运行
- Ctrl + c,发送SIGINT信号,默认进程会结束
工具
- wc
- ls -l | grep ^- wc -l,表示查找当前目录下有多少文件,grep ^- wc -l,就是数一下以-开头的结果有几行
- alisa
- alias c=clear,給clear命令起一个别名,命令生效后,按c就可以清屏
- grep
- ls -l | grep ^- wc -l,表示查找当前目录下有多少文件,grep ^- wc -l,就是数一下以-开头的结果有几行
- tar
- tar -cvf file.tar file1 file2,把file1和file2文件打包为file.tar包,打包成.abc也行,但是打包成.tar文件比较利于区分文件属性,c表示创建新的文档v表示显示打包过程,f表示要操作的文件名
- tar -zxvf file.tar.gz,z表示解压,去掉.gz,x表示解包,去掉.tar
- gzip
- gzip file.tar,file.tar 文件 压缩为file.tar.gz文件
- file f1,判断文件类型
- find . -name f1,查找当前目录下的名为f1的文件
初学者需要了解Linux这么多相关推荐
- Linux系统初学者指南,观点|Linux 系统调用的初学者指南
在过去的几年中,我一直在做大量容器相关的工作.先前,我看到 Julien Friedman 的一个很棒的演讲,它用几行 Go 语言写了一个容器框架.这让我突然了解到容器只是一个受限的 Linux 进程 ...
- 初学者如何选择Linux系统
Linux的发行商包括:RedHat.Debian.SUSE. CentOS .Ubuntu.红旗.麒麟-- 面对如此众多的系统初学者该做如何选择呢? 最近参考了诸多的教学机构,发现市面用的比较多的是 ...
- Linux初学者接住了---Linux常用命令
前言 本文整理了Linux常用命令,分类整理,举例说明使用方法,希望为大家带来便利.命令严格区分大小写,一般是小写,tab键补全. Linux常用命令 前言 一.文件处理命令 1.命令格式 目录处理命 ...
- linux命令之tee,技术|为初学者介绍的 Linux tee 命令(6 个例子)
有时候,你会想手动跟踪命令的输出内容,同时又想将输出的内容写入文件,确保之后可以用来参考.如果你想寻找这相关的工具,那么恭喜你,Linux 已经有了一个叫做 tee 的命令可以帮助你. 本教程中,我们 ...
- 献给初学者:谈谈如何学习Linux操作系统
本文出自 "技术成就梦想" 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允 ...
- linux bind命令,Linux初学者DNS配置指南(一)安装Bind
手把手教你如何配置Linux下的DNS(一)安装Bind 最近配置linux下DNS时,遇到些问题,查了网上的很多资料,内容都比较全面,但是没有一个能让linux初学者,按照所写的步骤一步一步执行下去 ...
- 初学者 linux版本,最适合于初学者的 Linux 发行版 | Linux 中国
原标题:最适合于初学者的 Linux 发行版 | Linux 中国 在本文中,我们将看到最适合于初学者的 Linux 发行版.这将有助于 Linux 新用户选择他们的第一个发行版. -- Aquil ...
- 【linux】图形界面基础知识(X、X11、GNOME、Xorg、KDE的概念和它们之间的关系)
转载自:https://blog.csdn.net/zhangxinrun/article/details/7332049 简介 LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间 ...
- 【Linux】Linux下的硬链接与符号链接
Linux的初学者常常混淆Linux中的硬链接(hard link)与符号链接(symbol link)的概念,分不清楚它们的区别.因此,本文将向读者全面介绍硬链接与符号链接,给予读者以全面的认识. ...
最新文章
- pythongui界面实例带注释_python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例...
- 微信小程序-智能机器人
- LeetCode 第 34 场双周赛(385/2842,前13.5%)
- oracle segment extent block,Oracle的基础问题segment extent block
- MySQL 的 IFNULL()、ISNULL() 、 NULLIF()、IF() 函数
- Tomcat和myeclipse的相关操作以及myeclipse的激活方法
- Mocha BSM产品亮点——如何去干扰事件
- Tomcat8.0之后GET请求不需要再设置中文乱码问题
- labview数据库查询mysql_Labview查询数据库及调试
- python 获取qq群成员信息_Python获取统计自己的qq群成员信息的方法
- 集成电路经典资料分享
- Chrome的插件安装与使用
- JavaWeb-云日志
- 人工智能时代是什么时代?
- symmetric tree java_Symmetric Tree对称树
- 推荐系统3--FM和FFM
- linux系统下的动态壁纸,桌面应用|动态壁纸给linux发行版添加活力背景
- python发送邮件DEMO
- 清明节 java_java生成12位唯一id 2013.3.12大三班清明节生成活动记录表.doc
- H3CTE认证网络排错讲师视频课程-宋文峰-专题视频课程
热门文章
- dnf登录游戏自动连接服务器,游戏登录-新手引导-地下城与勇士官方网站-腾讯游戏...
- 编程奇才“楼教主”,一人抵一城
- 华为s9300 设备升级R019 兼容万兆业务板
- toolkit-frame之toolkit-sprider(数据采集)---笔趣阁小说
- 男人开始对情人腻了的4种表现,别傻傻的不懂
- 什么是双线机房??双线是怎么实现的!!!
- 03pe修改计算机名称,[U盘PE教程]玩转PE内置注册表(基于NT6.0)
- easy excel date 类型解析报错_【今日真题】鼓楼小学教师招聘2017年考试真题及答案解析(上)...
- 7-1 解密英文藏头诗 (15 分)
- WIN10系统安装金蝶K3 WISE12.2客户端版本