吴裕雄--天生自然HADOOP学习笔记:Shell工具使用

实验目的

学习使用xshell工具连接Linux服务器

在连上的服务器中进入用户目录

熟悉简单的文件操作命令

实验原理

  熟悉shell命令是熟悉使用linux环境进行开发的第一步,我们在linux的交互式命令行输入的每一个命令都是一个shell指令,Shell本质是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
  我们学习shell编程的第一步就是熟悉常见的shell命令,常见的shell命令包括文件管理、文档编辑、文件传输、磁盘管理、网络通讯、系统管理等多种,今天的实验让大家学会使用最基本的几个命令,能够在linux环境完成一些简单的工作。

1.常见的基本命令
  1)文件目录的表达方法:
  /根目录
  .当前目录
  .. 上一级目录
  ~用户主目录
  文件和文件夹(蓝色代表目录, 白色代表文件,黄色代表设备文件,红色代表压缩文件,绿色代表可执行文件,浅蓝色代表链接文件)linux是以属性来控制文件是否能执行

  2)改变目录cd命令:
  cd / 进入到系统根目录
  cd . 进入当前目录
  cd .. 进入当前目录的父目录,返回上层目录
  cd /tmp 进入指定目录/tmp
  cd ~ 进入当前用户的家目录
  cd 进入当前用户的家目录
  cd - 回到刚才所在的目录

  3) pwd命令:
  显示当前所在目录 pwd

  4)显示文件或目录的属性 ls dir
  dir 显示当前目录的内容(无颜色)
  ls 显示当前目录的内容(有颜色)
  ls /tmp 显示指定目录/tmp的内容
  ls -l 列出文件和文件夹的基本属性和详细信息
  ll 列出文件和文件夹的基本属性和详细信息
  ls -a 列出当前目录的全部内容,包括隐藏文件(在文件和文件夹前面加“.”隐藏)
  ls -l -a 列出当前目录的全部文件和文件夹的基本属性和详细信息
  ls -la 列出当前目录的全部文件和文件夹的基本属性和详细信息
  ll -a 列出当前目录的全部文件和文件夹的基本属性和详细信息
  ls -A 列出当前目录的全部内容,包括隐藏文件,不显示“.”和“..
  ls --help 列出ls 命令的帮助内容
  ls a2* 列出以a2 开头的文件和文件夹
  ls -l a2* 列出以a2 开头的文件和文件夹的基本属性和详细信息

  5)创建目录mkdir
  mkdir dir1 在当前目录下创建dir 子目录
  mkdir /tmp/dir2 在指定目录/tmp下创建 dir2子目录
  mkdir -p dir3/dir4 在当前目录下创建2 级目录dir3和其子目录 dir4
  mkdir -p /dir5/dir6 在根目录下创建2 级目录dir5和其子目录 dir6
  mkdir dir7 dir8 dir9 在当前目录下创建3 个目录dir7 dir8 dir9,以空格隔开

  6)创建空文本文件 touch
  touch file1 在当前目录下创建file1 文件
  touch /tmp/file2 在指定目录/tmp下创建 file2文件

  7)复制文件命令 cp
  cp file2 /tmp 复制file2 文件到/tmp目录下
  cp /tmp/file2 /home 复制/tmp/file2文件到/home 目录下
  cp /home/file2 /tmp/file3 复制/home/file2/tmp 目录下并改名为file3
  cp -p /tmp/file3 /home 复制/tmp/file3/home 目录下并复制文件属性
  cp -r /dir5 /tmp 复制/dir5目录到/tmp

  8)移动文件或目录命令 mv
  mv file4 /tmp 移动file4 文件到/tmp目录下
  mv /home/file3 /tmp 移动/home/file3文件到/tmp目录下
  mv /home/file3 /tmp/file5 移动/home/file3文件到/tmp目录下并改名为file5
  mv file3 file4 file3改名为file4
  mv dir10 /tmp 移动目录到/tmp
  mv dir10 dir11 dir10目录改名为dir11

  9)删除文件命令 rm
  rm file1 删除文件file1
  rm -f file1 不用确认直接删除file1
  rm -f file1 file2 file3 不用确认同时删除多个文件
  rm /tmp/file1 删除指定目录/tmp下的文件 file1
  rm fi* 删除以fi 开头的文件
  rmdir 删除空目录
  rm -r dir 递归的方式删除非空目录dir
  rm -rf dir 不用确认直接删除非空目录dir

  10)查看文件内容命令 cat
  cat /etc/passwd 查看/etc/passwd文件
  cat /etc/passwd |more 分屏查看文件内容
  cat /etc/passwd |less 分屏查看文件内容,可以上下翻页,输入“q”退出

  11)查找文件命令 find
  find pass* 在当前目录下查找以pass 开头的文件
  find /etc/pass* /etc目录中查找以 pass开头的文件
  find /etc/pass* -print /etc目录中查找以 pass开头的文件,并显示出来

2.熟悉vi/vim文本编辑器命令
  1)vi/vimlinux平台强大的文本编辑工具,vi有三种模式:

命令模式:vi的默认进入状态(不可以输入字符,但可以对字符进行操作复制,移动、删除等操作)

插入模式:可以使用键盘输入和使用del和退格backspace键删除文字

编辑模式:可以输入查找替换等命令,也可以保存退出

  如果文件存在就编辑,不存在就创建文件,然后编辑。vi下有三种模式,输入vi命令进去后,不能编辑,只能使用复制、删除、粘贴等命令,称为命令模式;命令模式下按一下键盘上的字母i,就进入插入模式,可以使用键盘进行编辑,编辑完成后,按Esc进入命令模式,再按shift+:进入编辑模式,输入wq,按enter键保存退出。输入q,按enter键直接退出。

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第1张图片

 

 2)默认进入命令模式
  命令模式下输入i、o等字符可以进入插入模式,插入模式下按Esc进入命令模式,命令模式下按shift+进入编辑模式

  3)命令模式下

q:退出

wq:修改后保存退出

q!:强制退出,不保存修改的内容

3. 其他常用命令
  1)wc命令:用于计算字数。
  利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。

    wc -c filename 只显示fileneme文件的Bytes数。

    wc -l filename 只显示filename文件的列数。

    wc -w filename 只显示filename文件的字数。

  2)cut命令:用于显示每行从开头算起 num1 num2 的文字。

    -b :以字节为单位进行分割。

    -c :以字符为单位进行分割。

    -d :自定义分隔符,默认为制表符。

    -f :与-d一起使用,指定显示哪个区域。

  3)awk命令:一种处理文本文件的语言,是一个强大的文本分析工具。
  每行按空格或TAB分割,输出log.txt文本中的14项。

    $ awk '\{print $1,$4\}' log\.txt

 

实验环境

1.操作系统
操作机1Linux_Centos
操作机2Windows_7
操作机1默认用户名:root,密码:123456
操作机2默认用户名:hongya,密码:123456

 

 

步骤1:使用xshell建立连接

  1.1首先输入相应的用户名和密码进入实验机,然后进入操作机2Windows_7),点击运行桌面上的“xshell”,连接操作机1,如图:

命令(IP以实验为准)ssh 90.10.10.27

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第2张图片

 

 

 

1

 

  1.2输入正确的用户名和密码,进行远程连接。见下图,连接成功:

 

用户名:root

 

密码:123456

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第3张图片

 

2

 

步骤2:基本的命令

  2.1whoami,显示当前用户名

命令:whoami

 

 

3

  2.2pwd,显示当前所在文件目录

命令:pwd

 

 

4

  2.3ls,列出当前文件夹,加上-l”参数列表。

命令:ls

命令:ls -l

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第4张图片

 

 

5

  2.4mkdir,创建目录,父目录必须存在,如果父目录不存在,加上-p”参数递归创建父目录。

建立目录hongyamkdir hongya

建立目录hongya2以及其自目录hongya(会发现出现警告,无法创建)mkdir hongya2/hongya

使用命令-p”递归创建父目录:mkdir -p hongya2/hongya

显示当前目录下内容:ls

显示目录hognya下内容:ls hongya

显示目录hongya2下的内容:ls hongya2

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第5张图片

 

 

 

6

 

  2.5cd,进入目录,输入的参数中,.”代表当前目录,“..”代表上级目录。

 

进入目录:cd hongya2/hongya

 

返回上一层:cd ..

 

7

  2.6rm,删除文件,加上-rf”会递归删除目录及文件。

查看当前目录内容:ls

删除非空目录(可以发现,并不能直接删除hongya2,因为其目录下还有文件):rm hongya2

直接删除非空目录:rm -rf hongya2

再次查看当前目录内容,可以看到hongya2已经删除:ls

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第6张图片

 

 

8

  2.7touch,创建文件。

命令:touch hongya3

 

 

9

 

步骤3vi/vim命令

  3.1使用vim+文件名,创建文件。

命令:vi hongyaa

 

10

  3.2进入到命令模式,见下图,可以看到信息为新文件hongyaa

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第7张图片

 

 

 

11

 

  3.3在命令模式之中,只要按下“i”键就可以进入插入模式了。在插入模式当中,你可以发现在左下角状态栏中会出现“--INSERT--”的字样,那就是可以输入任意字符的提示。这个时候,键盘上除了“Esc“键都可以视作为一般的输入按钮了,可以进行任何的编辑。

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第8张图片

 

 

 

12

 

  3.4编辑完成之后,按“Esc”键进入命令模式,再按“shift+:”进入编辑模式,输入要编辑的内容,输入“wq”然后回车保存退出。

吴裕雄--天生自然HADOOP学习笔记:Shell工具使用_第9张图片

 

 

 

13

 

  3.5使用命令直接查看文件内容。

 

命令:cat hongyaa

 

 

14

注意事项:
  1、每个命令的执行失败,可能原因是当前用户权限不够,可以学习linux权限管理相关内容。
  2、第一次接触vi/vim的同学,可能一时不太理解vim操作,一定要搞清楚vim的几种模式,以及当前是出于哪一种模式

 

你可能感兴趣的:(吴裕雄--天生自然HADOOP学习笔记:Shell工具使用)