learn the shell

what is the shell?

when we speak of the command line,we are really to the shell.Actually the shell is a program that takes keyboard commands and passes them to the opreating system to carry out.

Now I start the virtualizer, I use the Ubuntu ,its version number is 14.04.2.I get in a graphical user interface,press ctrl + alt + F1(To switch from one virtual console to another, press Alt and F1-F6. To return to the graphical desktop, press Alt-F7.)

Now you can see

ubnutu login:
Password

Enter your user name,and your password. you should know that the password input will not be displayed

And you can see

user_name@ubnutu:~$

this is called a shell prompt


here are some knowledge points:

  • If we press the up-arrow key ,we can see the command history
  • we cannot use Ctrl-c and Ctrl-vto perform copy and paste inside a terminal window.But when we choose something,we can press the middle mouse button ,which will cause the text to be pasted at the cursor location
  • a few simple commands:
    • date:to display the current time and date.

      username@ubuntu:~$ date
      Tue Mar 27 21:43:03 PDT 2018

    • cal:to display a calendar of the current month.
    • df:to see the current amount of free space on your disk drives
    • free:to display the amount of free memory.
  • We can end a terminal session by either closing the terminal emulator window, or by entering the exit command at the shell prompt

文件系统中跳转

首先我们先了解几个概念

  • pwd-打印出当前工作目录名
  • cd -更改目录
  • ls - 列出目录内容

Linux,以分层目录结构来组织所有文件。 这就意味着所有文件组成了一棵树型目录(有时候在其它系统中叫做文件夹), 这个目录树可能包含文件和其它的目录。文件系统中的第一级目录称为根目录。 根目录包含文件和子目录,子目录包含更多的文件和子目录

绝对路径

绝对路径开始于根目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件。

相对路径

相对路径开始于工作目录。 为了做到这个(用相对路径表示), 我们在文件系统树中用一对特殊符号来表示相对位置。 这对特殊符号是 “.” (点) 和 “..” (点点)。

符号 “.” 指的是工作目录,”..” 指的是工作目录的父目录

在几乎所有的经情况下,我们都可以省略./ 例如:

cd /usr/bin //绝对路径
cd ./bin //相对路径
cd bin //相对路径省略./

这些的效果都是一样的


有用的快捷键

cd 更改工作目录到家目录
cd - 更改工作目录到先前的工作目录
cd ~user_name 更改工作目录到用户家目录

ls -a 显示以“.” 字符开头的隐藏文件


一些注意事项:

  1. 文件名和命令名是大小写敏感的
  2. 文件名的标点符号仅限用 .,-,_。不要在文件名中是用空格,如果想表达词语的空格,用下划线字符来替代

探究操作系统

选项和参数

大多数命令是按照以下格式

command -options arguments

命令名 + 更正命令行为的选项 + 参数

下面我们给出ls命令的选项


长格式输出

当我们在在某个目录下输入

ls -l

我们可以看到

(ls -l)

依次表达的意思是

对于文件的访问权限

文件的硬链接数目

文件所有者的用户名

文件所属用户组的名字

字节数表示文件大小

最新修改日期

文件名

这些具体的含义我们会在之后的章节中学到


确定文件类型

我们调用
file filename

命令去确定文件的类型


用 less 浏览文件内容

less 命令是一个用来浏览文本文件的程序。

通过less filename来使用

当我们查看文件系统的时候 我们可以使用一下的命令

Learn the shell的更多相关文章

  1. Spring Shell入门介绍

    目录 Spring Shell是什么 入门实践 基础配置 简单示例 注解@ShellMethod 注解@ShellOption 自定义参数名称 设置参数默认值 为一个参数传递多个值 对布尔参数的特殊处 ...

  2. MongDB篇,第三章:数据库知识3

    MongDB    数据库知识3 修改器 $inc 对某个域的值进行加减修改 $mul 对某个域的值进行乘法修改 $min 如果筛选的文档指定的值小于min则不修改,如果大于min 给定的值则修改为m ...

  3. learn shell

    the basic shell skills.   Bourne shell sh ksh Bash psh zsh C shell csh tcsh   [root@bogon temp]# cat ...

  4. (copy) Top Ten Reasons not to use the C shell

    http://www.grymoire.com/Unix/CshTop10.txt ========================================================== ...

  5. Shell脚本语法

      索引 1. 第一行必须是"#!/bin/sh" 2. 注释:一行开头为 # 3. 定义变量 4. 逻辑符号 5. 接收参数 6. 控制流:if/then/elif/else/f ...

  6. 提高神经网络的学习方式Improving the way neural networks learn

    When a golf player is first learning to play golf, they usually spend most of their time developing ...

  7. 终端执行python shell的方法

    假设有一个Py文件,放在下PycharmProjects/learn下,文件名是 myfile.py. 1.打开终端输入python3进入2.在shell下 输入import sys 回车3.输入 s ...

  8. Managing linux Shell Jobs

    Managing Shell Jobs   When moving jobs between the foreground and background, it may be useful to ha ...

  9. 转:linux执行shell脚本的方式及一些区别

    假设shell脚本文件为hello.sh放在/root目录下.下面介绍几种在终端执行shell脚本的方法: [root@localhost home]# cd /root/ [root@localho ...

随机推荐

  1. HttpContext.RewritePath

    定义:使用给定路径重写 URL.就是可以跳转到指定的URL. 也可以做为伪静态的跳转.具体如下. 他的重载 ①新建一个页面,放两个链接到另一个页面,注意给的链接 ②在 global.asax 文件中 ...

  2. JavaServlet 路径书写总结

    在写javaweb项目的时候,总会遇到路径书写的问题,现在将其作个总结. 在javaweb中需要书写路径的地方主要有这四大类: 客服端路径 超链接 表单 重定向 服务器端路径 转发 包含 资源获取路径 ...

  3. node.js启动调试方式

    node.js启动调试方式(nodeJs不能像js一样在控制台调试) 以express项目为例,启动路径是localhost:3000 一.通过node命令启动 node server/bin/www ...

  4. MacBookPro 存储空间优化

    首先,打开电脑内的"终端"; 其次,逐条录入下面的命令行,执行完成后,再次查看您的储存空间,多少会有一些优化,具体会优化出多少储存空间因您日常使用而定(本人清出了5G 空间,还不错 ...

  5. git(将现有项目加入osChina)

    将现有项目加入osChina 在osChina中创建项目 注意不要初始化项目.(其实初始化也没有什么问题,可以直接clone到本地,再把项目添加进去就行了,后续操作一样的) 项目现在基本为空,得到项目 ...

  6. scrapy--json(360美图)

    之前开始学习scrapy,接触了AJax异步加载.一直没放到自己博客,趁现在不忙,也准备为下一个爬虫做知识储存,就分享给大家. 还是从爬取图片开始,先上图给大家看看成果,QAQ. 一.图片加载的方法 ...

  7. OSI七层模型 学习摘要

    OSI参考模型是计算机网路体系结构发展的产物.它的基本内容是开放系统通信功能的分层结构.这个模型把开放系统的通信功能划分为七个层次,从邻接物理媒体的层次开始,分别赋于1,2,……7层的顺序编号,相应地 ...

  8. Python系列6之面向对象

    目录 生成器和迭代器 字符串格式化 内置函数vars 反射 面向对象编程 一. 生成器和迭代器  1. 生成器 生成器具有一种生成的能力,它仅仅代表着一种生成的能力,当我们需要使用的时候,才会通过迭代 ...

  9. Pandas 索引和切片

    Series和Datafram索引的原理一样,我们以Dataframe的索引为主来学习 列索引:df['列名'] (Series不存在列索引) 行索引:df.loc[].df.iloc[] 选择列 / ...

  10. Dialog BLE 学习之 修改分散加载文件 (2)

    最近搞Dialog的BLE SDK,发现空间不够了,询问原厂,得知可以通过调整分散加载文件而增加空间,一方面是有42KB+8KB的硬件基础,另一方面是原有的程序限制为38KB+8KB.故顺便学习了下把 ...