《The Linux Command Line》 读书笔记01 基本命令介绍
《The Linux Command Line》 读书笔记01 基本命令介绍
1. What is the Shell?
The Shell is a program that takes keyboard commands and passes them to the operating system to carry out.
提示符
$被称作shell prompt,它表明shell准备好接收输入。
通常是包含了你的用户名和机器名(username@machinename),之后是当前的工作目录,之后是一个dollar符号。
如果最后一个符号不是$符号而是井号(#)(hash mark),当前终端会话具有superuser权限。
这表明要么我们是以root用户登录的,要么我们选择了一个terminal emulator提供了超级用户,也即管理员的权限。
一些简单的命令
date显示当前的时间还有日期
cal展示当前月份的日历
df查看当前硬盘的空间
free查看空闲存储空间
exit结束会话
复制和粘贴
命令行中Ctrl+C,V的复制粘贴方法不再管用,在Linux命令行中的复制粘贴是这样的:
鼠标双击一个文件名,表示复制;
单击鼠标中键,表示粘贴。
2. Navigation
在文件系统中导航,主要要用这三个命令:
pwd—Print name of current working directory. 打印当前工作目录。
cd—Change directory.
ls—List directory contents.
文件系统是树形的,但是不像Windows里面,每个存储设备有一个单独的树;Unix-like system永远只有一个文件系统树形结构。
改变当前目录
改变当前目录的命令是cd(change directory),后面跟目标路径。
目标路径有两种给出的方式,一种是绝对路径,一种是相对路径。
绝对路径名
绝对路径是从root目录开始的,root目录通常用一个开头的斜线(/)表示:
比如cd /usr/bin可以进入程序安装目录。
相对路径名
相对路径的起点是工作目录,需要使用特殊的符号来表示相对位置:
.一个点表示当前目录;
..两个点表示父目录。
比如当前在usr下,想进入bin下:
cd ./bin
在大多数时候,可以省略./
cd bin
关于文件名
1.以句号(.)开头的文件是隐藏文件。
这仅仅是意味着ls不能列出它们,ls –a才能列出它们。
当账户建立的时候,home目录下会出现一些这样的文件,配置一些东西,一些应用也会把它们的配置文件放在这里。
2.文件名和命令都是大小写敏感的。
3.Linux没有后缀名(file extension)的概念。
但是尽管Unix类的系统不使用文件后缀来决定文件内容和用途,一些应用程序还是需要文件名后缀。
4.尽管Linux支持很长的文件名,可以包含空格和标点,但是你最好将文件名中使用的标点限制在句号、连字符和下划线这三种类型内。
最重要的是,在文件名中不要使用空格。不然一些命令行的任务会变得很难进行。
3. Exploring the System
ls命令
ls可以列出当前工作目录下的文件和子目录名。
除了当前目录,也可以指定路径:
ls /usr
并且可以指定多个路径:
ls ~ /usr
这样可以分别列出用户的home目录和usr目录下的内容。
(home目录用字母~表示)
也可以指定输出方式:ls –l以长格式输出。
命令选项和参数
命令通常跟着一个或多个选项(options),指定行为方式;
另外会跟着一个或多个参数(arguments),指定行为对象。
command –options arguments
选项通常是一个字母,前缀一个连字符,比如-l。
很多命令也支持长选项,由两个连字符后接一个单词组成。
还有很多命令支持多条短选项串接,比如ls –lt。
l选项指定输出格式为长,t选项将结果按照文件的修改时间排序。
如果是ls –lt –reverse
将会逆序排列结果。
一些常用的ls选项:
file命令查看文件类型
前面提到过,Linux中,所有东西都是一个file,文件是不用后缀名的,即从文件名上并不能看出文件的类型。
所以可以用命令file filename来查看文件类型,执行后会输出文件描述。
file filename
less命令查看文件内容
less命令可以查看文本文件(比如配置文件、脚本)的内容。
less filename
执行后可以滚动查看文件内容,可以按Q键退出less。
less常用命令:
less取代了早期Unix的一个叫做more的程序。名字是根据设计中常用的less is more的短语。
4. Manipulating Files and Directories
cp—Copy files and directories. 复制文件或目录。
mv—Move/rename files and directories. 移动和重命名文件和目录。
mkdir—Create directories. 创建目录,可以创建多个。
rm—Remove files and directories. 删除文件和目录。
ln—Create hard and symbolic links.
通配符wildcards or globbing
注意,字母的范围,比如[A-Z]或者[a-z]可能不太好用。
rm命令使用时要注意
由于删除操作是不可逆的,所以使用rm命令的时候要格外注意,尤其是和通配符结合的时候,rm *.html多加一个空格就有可能会删掉所有文件。
所以比较好的方法:首先,仔细检查通配符的使用;其次,先用ls命令看一眼要删除的文件,然后向上返回命令,将ls改成rm。
参考资料
《The Linux Command Line》http://linuxcommand.org/tlcl.php
《The Linux Command Line》 读书笔记01 基本命令介绍的更多相关文章
- 《The Linux Command Line》 读书笔记02 关于命令的命令
<The Linux Command Line> 读书笔记02 关于命令的命令 命令的四种类型 type type—Indicate how a command name is inter ...
- 《The Linux Command Line》 读书笔记04 Linux用户以及权限相关命令
Linux用户以及权限相关命令 查看身份 id:Display user identity. 这个命令的输出会显示uid,gid和用户所属的组. uid即user ID,这是账户创建时被赋予的. gi ...
- [笔记]The Linux command line
Notes on The Linux Command Line (by W. E. Shotts Jr.) edited by Gopher 感觉博客园是不是搞了什么CSS在里头--在博客园显示效果挺 ...
- Linux Command Line Basics
Most of this note comes from the Beginning the Linux Command Line, Second Edition by Sander van Vugt ...
- Linux Command Line 解析
Linux Command Line 解析 0 处理模型 Linux kernel的启动包括很多组件的初始化和相关配置,这些配置参数一般是通过command line进行配置的.在进行后续分析之前,先 ...
- 15 Examples To Master Linux Command Line History
When you are using Linux command line frequently, using the history effectively can be a major produ ...
- 10 Interesting Linux Command Line Tricks and Tips Worth Knowing
I passionately enjoy working with commands as they offer more control over a Linux system than GUIs( ...
- Reso | The Linux Command Line 的中文版
http://book.haoduoshipin.com/tlcl/book/zh/ 本书是 The Linux Command Line 的中文版, 为大家提供了多种不同的阅读方式. 中英文双语版- ...
- Linux Command Line(II): Intermediate
Prerequisite: Linux Command Line(I): Beginner ================================ File I/O $ cat > a ...
随机推荐
- Android:StatFs类 获取系统/sdcard存储空间信息
在存储文件时,为了保证有充足的存储空间大小,通常需要知道系统内部或者sdcard的剩余存储空间大小,这里就需要用到StatFs类. 1. 判断 SDCard 是否存在,并且是否具有可读写权限 /** ...
- 网络编程之socket新解
由于工作并不是很忙,闲暇之余就读了下tomcat的源代码.我是从事java服务器开发工作的,大体的一些服务器线程模型我都是了解的.其大部分都是由一个线程调用监听端口等待客户端的链接,建立连接后再交由其 ...
- Unsafe的应用
要想把java并发包学好,并明白其底层的设计原理,Unsafe类你不能不去研究一下.下面介绍一下Unsafe类的功能以及它在JDK中的应用. 一.分配内存和释放内存 功能:类中提供的3个本地方法all ...
- StreamHelper
public static MemoryStream CreateMemoryStreamFromBytes(byte[] inputData) { if (inputData == null || ...
- PyQt写的五子棋
技术路线 GUI的实现 使用PyQt技术作为基础.PyQt是一个支持多平台的客户端开发SDK,使用它实现的客户端可以运行在目前几乎所有主流平台之上. 使用PyQt,Qt设计器实现UI,通过pyuic4 ...
- block,inline,inline-block的区别
block: 英语翻译过来是“块”意思,就跟小时候玩过的积木方块一样,一块一块往上搭. inline: 英语翻译过来就是“内联”的意思,内联不好理解,我的理解就是行内元素: block和inline都 ...
- .Net Framework源码
http://referencesource.microsoft.com/
- [小工具]CSS内嵌样式自动提取器
逐行分析,将内联样式提取出来,并自动编号代替的一个小工具软件 注:style=""(此处必须是标准的双引号!) http://files.cnblogs.com/quejuwen/ ...
- jquery层级原则器(匹配父元素下的子元素)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ios源码-ios游戏源码-ios源码下载
游戏源码 一款休闲类的音乐小游戏源码 该源码实现了一款休闲类的音乐小游戏源码,该游戏的源码很简单,而且游戏的玩法也很容易学会,只要我们点击视图中的grid,就可以 人气:2943运行环境:/Xco ...