// 查看日历
cal
// 修改密码
passwd
// 查看目录和文件
ls -l
ls
// 查看当前用户信息
whoami
// 查看当前在线用户
users
who
在Linux中,可以使用 vi 编辑器创建一个文本文件,例如:
$ vi filename
上面的命令会创建文件 filename 并打开,按下 i 键即可进入编辑模式,你可以向文件中写入内容。例如:
This is Linux file....I created it for the first time.....
I'm going to save this content in this file.
完成编辑后,可以按 esc 键退出编辑模式,也可以按组合键 Shift + ZZ 完全退出文件。这样,就完成了文件的创建。
$ vi filename
$
// 打开filename
vi filename
当文件被打开后,可以按 i 键进入编辑模式,按照自己的方式编辑文件。如果想移动光标,必须先按 esc 键退出编辑模式,然后使用下面的按键在文件内移动光标:
l 键向右移动
h 键向左移动
k 键向上移动
j 键向下移动
// 查看文件内容
cat filename
可以使用 wc 命令来统计当前文件的行数、单词数和字符数,下面是一个简单的例子:
$ wc filename
2 19 103 filename
$
每一列的含义如下:
第一列:文件的总行数
第二列:单词数目
第三列:文件的字节数,即文件的大小
第四列:文件名
// 复制filename文件
cp filename copyfile
// 查看多个文件的信息
wc filename copyfile
// 重命名文件
mv copyfile newfile
// 删除文件
rm filename
// 进入主目录
cd ~
如果一个路径以 / 开头,就称为绝对路径;它表示当前文件与根目录的关系。举例如下:
/etc/passwd
/users/sjones/chem/notes
/dev/rdsk/Os3
不以 / 开头的路径称为相对路径,它表示文件与当前目录的关系。例如:
chem/notes
personal/res
// 获取当前所在的目录
pwd
查看目录中的文件可以使用 ls 命令:
$ ls dirname
// 创建目录
mkdir dirname
// 创建多层目录
mkdir -p /tmp/amrood/test
// 删除目录
rmdir dirname
// 查看newfile的权限
ls -l newfile
[asina@localhost ~]$ ls -l newfile
-rw-rw-r--. 1 asina asina 123 Oct 26 07:26 newfile
chown 命令用来更改文件所有者,其语法如下:
$ chown user filelist
// newfile文件所有者给asina用户
chown asina newfile
Linux环境变量
TEST = 'Linux Programming'
echo $TEST
常用环境变量
下表列出了部分重要的环境变量,这些变量可以通过上面提到的方式修改。
变量 描述
DISPLAY 用来设置将图形显示到何处。
HOME 当前用户的主目录。
IFS 内部域分隔符。
LANG LANG可以让系统支持多语言。例如,将LANG设为pt_BR,则可以支持(巴西)葡萄牙语。
PATH 指定Shell命令的路径。
PWD 当前所在目录,即 cd 到的目录。
RANDOM 生成一个介于 0 和 32767 之间的随机数。
TERM 设置终端类型。
TZ 时区。可以是AST(大西洋标准时间)或GMT(格林尼治标准时间)等。
UID 以数字形式表示的当前用户ID,shell启动时会被初始化。
Linux管道和过滤器
有时候,我们可以把两个命令连起来使用,
一个命令的输出作为另一个命令的输入,这就叫做管道。
为了建立管道,需要在两个命令之间使用竖线(|)连接。
管道是Linux进程之间一种重要的通信机制;除了管道,还有共享内存、消息队列、信号、套接字(socket) 等进程通信机制。
Linux通信机制:管道,共享内存,消息队列,信号,套接字
管道使用竖线(|)将两个命令隔开,竖线左边命令的输出就会作为竖线右边命令的输入。
连续使用竖线表示第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
// 查找有关的文件
ls -l | grep 'D'
// 输出不包含D的有关文件
ls -l | grep -v 'D'
grep 命令有很多选项:
选项 说明
-v 反转查询,输出不匹配的行。例如,grep -v "test" demo.txt 将输出不包含"test"的行。
-n 输出匹配的行以及行号。
-l 输出匹配的行所在的文件名。
-c 输出匹配的总行数。
-i 不区分大小写进行匹配。
Linux进程管理
// 查看正在运行的进程
ps
// 查看更多的信息
ps -f