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. 14、SpringBoot------定制错误返回内容json格式

    开发工具:STS 前言: 在前后端分离的项目中,当前端向后端请求资源失败时,想知道具体的错误原因,给用户予以提示. 但是,在springboot中返回内容是固定的.并不适合我们前端进行分析. 所以,就 ...

  2. JQuery 解决按钮上的倒计时问题

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  3. 多进程(multiprocessing module)

    一.多进程 1.1 多进程的概念 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好 ...

  4. PHP获取异常信息

    try { } catch (\Exception $e) { $extra = [ 'code' => $e->getCode(), 'msg' => $e->getMess ...

  5. 微信小程序插件内页面跳转和参数传递

    在此以插件开发中文章列表跳传文章详情为例. 1.首先在插件中的文章列表页面wxml中绑定跳转事件. bindtap='url' data-id="{{item.article_id}}&qu ...

  6. 005--Django2.0的路由层

    URL配置就像Django所支撑的网站目录,它的本质是每条URL调用的视图函数的映射表,每一个请求执行对应的视图函数. 1.简单的路由配置  from django.contrib import ad ...

  7. POJ:3977-Subset(双向搜索)

    Subset Time Limit: 30000MS Memory Limit: 65536K Total Submissions: 5961 Accepted: 1129 Description G ...

  8. python基础之模块part1

    模块: 模块本质上就是一个Python程序. 所有说是对象的,一定可以通过  对象.方法  来实现某些操作. 模块种类: 内置模块 第三方模块 自定义模块 import在查找模块的顺序:内置模块--- ...

  9. android Intent onNewIntent 什么时候调用

    1.activity A 的lanch model 为singleTop 此刻,A在activity 栈顶,那么就会调用A 的onNewIntent 如果A不在栈顶,则不会调用. 2.activity ...

  10. videomon 环境搭建

    1.安装ACE-5.8.0.tar.bz2 tar -zxvf ACE-.tar.bz2 cd ACE_wrappers/mkdir buildcd build../configuremake &am ...