linux 和 vim 学习笔记

来源:互联网 发布:做报表的软件 编辑:程序博客网 时间:2024/05/29 10:09

来熊猫tv工作,发现他们的工作模式是所有的开发人员都登陆远程主机进行开发,而远程主机是一个linux系统,因此对于linux的学习将会是当前的重要内容。


1 linux 目录操作

1.1 通用符号说明

在Linux的目录结构中“.”表示当前目录,“..”表示当前目录的父目录,“/”表示根目录 ,“~”表示用户文件夹,对应位置是“/home/wangtengyun”;

linux的目录机构:“/”表示根目录,根目录下面有“home/”目录,“home/”目录下就是这台linux电脑所有的用户文件夹,对应于我的文件夹叫“wangtengyun/”, 

“home/”下还有其他用户的用户文件夹。



1.2  创建目录

#在当前目录下建立新目录(不是文件)
mkdir xx

#进入刚创建好的目录
cd ~/xx


1.3 概念解释 (来自http://www.cnblogs.com/peida/archive/2012/11/29/2794010.html)

Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
  文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。

可执行权限表示允许将该文件作为一个程序执行。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。

用户也可根据需要把访问权限设置为需要的任何组合。

  有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,

还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。

确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。

例如:   Chmod 755 /home/wangyengyun/xx              #修改xx文件的使用权限

 

1.4 ls 命令

隐藏文档:文档名前为“.”

Ls命令是list的意思。

Ls -al #列出所有文档,包含隐藏文档,如下:





在这里需要注意目录档案的区别:

1) 对于目录

非root用户无法进入这个目录,x与目录的关系特殊,此时要对非root用户开放x,才能让非root进入这个目录。


  

2)对于文件

在xx目录下,运行
vi createfile        #因为createfile本来没有,因此这会创建createfile文件,但是如果createfile没有输入内容,这样创建的文件是不成功的。




2 文件操作

打开多个文件时:
:bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。(陈皓注:我喜欢使用:n 到下一个文件)

 

文件的复制和移动,相关命令以及设计实验。


 



3 vi的操作

dd #删除当前行
u #undo
CTRL + r #redo


#查找字符串
在normal模式下按下 / 即可进入查找模式,输入要查找的字符串并按下回
车。 Vim会跳转到第一个匹配。按下n查找下一个,按下N查找上一个。


:s(substitute)命令用来查找和替换字符串。语法如下:
:{作用范围}s/{目标}/{替换}/{替换标志}
例如:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有(g)出现都会被替换。




例如 0y$ 命令意味着:

0 → 先到行头
y → 从这里开始拷贝
$ → 拷贝到本行最后一个字符
p → 粘贴



Vi 编辑器中,再查找之后,匹配的元素会被高亮显示,关闭vi之后,下次打开vi,高亮仍然存在 命令“:nohl”,(nohightlight)



4 shell 操作

ssh是一个安全协议,可以登录远程电脑,并进行操作。ssh server的默认端口为22。

按下两个[Tab]按键,可以看到linux有多少个命令。有2520个命令


Grep 命令




系统任务有关命令:

Ctrl + Z  #程序可以挂起,放在后台运行

Jobs     #查看当前有那些程序在后台执行

Fg 1   #将第一个程序调至前台继续执行

Fg 2   #将第二个程序调至前台继续执行


Ps Pm2 jobs 三者的区别???


UID和GID 信息放在etc/passwd ; UID 的密码 放在 etc/shadow (这样做是为了安全)

Vi etc/passwd 可以看到以下的文件内容:


6 linux 原理

在linux系统中,触发任何一个事件时,系统都会将它定义为一个程序,并且给予这个程序一个ID,称为PID,同时依据启发这个程序的使用者与相关属性关系,给予这个PID一组有效的权限设定。


系统仅认识binary file,要让系统工作,就是启动一个binary file.
每个程序都有三组人马的权限。


登录系统,就是执行 /bin/bash 程序,而每个人获得的权限是不同的,


工作管理(job control):

在一个bash下,同时进行多个工作。 在进行工作管理的行为中,每个工作都是目前bash的子程序,彼此之间是有相关性的。

 

前景与背景:

Foreground: 你可以控制的这个工作

Background: 内存中可以自行运行的工作,你无法直接控制他,除非以bg/fg 等指令将该工作呼叫出来。

在只有一个Bash的环境中,如果想要同时进行多个工作,那么就可以把某些工作丢到背景环境中,然后就可以继续进行前景的工作。
例如:


 
第一行指令:将 /etc/ 整个备份成为 /tmp/etc.tar.gz 时,又不想要等待。通过“&”将该指令扔到背景中,此时bash会给这个指令一个 工作号码job number。 第二行[1] 是工作号码,24874是该指令触发的PID。



7 其他命令









残余问题

touch也可以创建文件,它和vi创建的有何区别?
在新建文件时用touch命令可以建立一个空文件,而vi命令则可以直接编辑文件的内容并保存。touch命令在linux中很少用到,




linux常见命令的记忆方法




ll命令下的东西是什么,什么是“总用量”


交换文件是什么概念?
vi在编辑某一个文件时,会生成一个临时文件,这个文件以 . 开头并以 .swp结尾。正常退出该文件自动删除,如果意外退出例如忽然断电,该文件不会删除,


hosts干什么用?
很多用户都知道在Window系统中有个Hosts文件,Hosts是一个没有扩展名的系统文件。 Hosts文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP地址,实现DNS的功能。Hosts就是一个本地的域名解析器,其优先级高于网络的域名解析服务器。




如何理解linux支持多用户。


在linux下敲命令who,会出来很多结果,怎么找到自己想要的结果。



0 0
原创粉丝点击