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这么多相关推荐

  1. Linux系统初学者指南,观点|Linux 系统调用的初学者指南

    在过去的几年中,我一直在做大量容器相关的工作.先前,我看到 Julien Friedman 的一个很棒的演讲,它用几行 Go 语言写了一个容器框架.这让我突然了解到容器只是一个受限的 Linux 进程 ...

  2. 初学者如何选择Linux系统

    Linux的发行商包括:RedHat.Debian.SUSE. CentOS .Ubuntu.红旗.麒麟-- 面对如此众多的系统初学者该做如何选择呢? 最近参考了诸多的教学机构,发现市面用的比较多的是 ...

  3. Linux初学者接住了---Linux常用命令

    前言 本文整理了Linux常用命令,分类整理,举例说明使用方法,希望为大家带来便利.命令严格区分大小写,一般是小写,tab键补全. Linux常用命令 前言 一.文件处理命令 1.命令格式 目录处理命 ...

  4. linux命令之tee,技术|为初学者介绍的 Linux tee 命令(6 个例子)

    有时候,你会想手动跟踪命令的输出内容,同时又想将输出的内容写入文件,确保之后可以用来参考.如果你想寻找这相关的工具,那么恭喜你,Linux 已经有了一个叫做 tee 的命令可以帮助你. 本教程中,我们 ...

  5. 献给初学者:谈谈如何学习Linux操作系统

    本文出自 "技术成就梦想" 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允 ...

  6. linux bind命令,Linux初学者DNS配置指南(一)安装Bind

    手把手教你如何配置Linux下的DNS(一)安装Bind 最近配置linux下DNS时,遇到些问题,查了网上的很多资料,内容都比较全面,但是没有一个能让linux初学者,按照所写的步骤一步一步执行下去 ...

  7. 初学者 linux版本,最适合于初学者的 Linux 发行版 | Linux 中国

    原标题:最适合于初学者的 Linux 发行版 | Linux 中国 在本文中,我们将看到最适合于初学者的 Linux 发行版.这将有助于 Linux 新用户选择他们的第一个发行版. -- Aquil ...

  8. 【linux】图形界面基础知识(X、X11、GNOME、Xorg、KDE的概念和它们之间的关系)

    转载自:https://blog.csdn.net/zhangxinrun/article/details/7332049 简介 LINUX初学者经常分不清楚linux和X之间,X和Xfree86之间 ...

  9. 【Linux】Linux下的硬链接与符号链接

    Linux的初学者常常混淆Linux中的硬链接(hard link)与符号链接(symbol link)的概念,分不清楚它们的区别.因此,本文将向读者全面介绍硬链接与符号链接,给予读者以全面的认识. ...

最新文章

  1. pythongui界面实例带注释_python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例...
  2. 微信小程序-智能机器人
  3. LeetCode 第 34 场双周赛(385/2842,前13.5%)
  4. oracle segment extent block,Oracle的基础问题segment extent block
  5. MySQL 的 IFNULL()、ISNULL() 、 NULLIF()、IF() 函数
  6. Tomcat和myeclipse的相关操作以及myeclipse的激活方法
  7. Mocha BSM产品亮点——如何去干扰事件
  8. Tomcat8.0之后GET请求不需要再设置中文乱码问题
  9. labview数据库查询mysql_Labview查询数据库及调试
  10. python 获取qq群成员信息_Python获取统计自己的qq群成员信息的方法
  11. 集成电路经典资料分享
  12. Chrome的插件安装与使用
  13. JavaWeb-云日志
  14. 人工智能时代是什么时代?
  15. symmetric tree java_Symmetric Tree对称树
  16. 推荐系统3--FM和FFM
  17. linux系统下的动态壁纸,桌面应用|动态壁纸给linux发行版添加活力背景
  18. python发送邮件DEMO
  19. 清明节 java_java生成12位唯一id 2013.3.12大三班清明节生成活动记录表.doc
  20. H3CTE认证网络排错讲师视频课程-宋文峰-专题视频课程

热门文章

  1. dnf登录游戏自动连接服务器,游戏登录-新手引导-地下城与勇士官方网站-腾讯游戏...
  2. 编程奇才“楼教主”,一人抵一城
  3. 华为s9300 设备升级R019 兼容万兆业务板
  4. toolkit-frame之toolkit-sprider(数据采集)---笔趣阁小说
  5. 男人开始对情人腻了的4种表现,别傻傻的不懂
  6. 什么是双线机房??双线是怎么实现的!!!
  7. 03pe修改计算机名称,[U盘PE教程]玩转PE内置注册表(基于NT6.0)
  8. easy excel date 类型解析报错_【今日真题】鼓楼小学教师招聘2017年考试真题及答案解析(上)...
  9. 7-1 解密英文藏头诗 (15 分)
  10. WIN10系统安装金蝶K3 WISE12.2客户端版本