Home>Article>Operation and Maintenance> What are the commands to modify files in Linux?
Linux commands to modify files: 1. "vi" or "vim" command, which can be used to modify the content of the file; 2. "mv" command, which can be used to modify the name of the file; 3. "chmod", The "chgrp" and "chown" commands can be used to modify the permissions of the file; 4. The "touch" command can modify the time of the file.
#The operating environment of this tutorial: linux5.9.8 system, Dell G3 computer.
linux modify the contents of the file
The command is:vi
,vim
vi editor, equivalent to Notepad, has editing functions, but weaker
vim is a complex editor, equivalent to Windows editplus, notepad Wait
Steps:
1. Executevi world.txt
to enter the editor (default command mode),
2 , click a or i to enter the editing mode, type:hello linux world!
3. Then press the esc key on the keyboard to exit the editing mode (enter the command mode),
4. Finally, type colon:,
5. Type wq again to save and exit.
Linux changes the name of the file
The command is:mv
mv (full spelling in English :move file) command is used to rename a file or directory, or move a file or directory to another location.
Syntax:
mv [options] source dest mv [options] source... directory
The format is as follows:
mv source_file(文件) dest_file(文件)
Change the source file name source_file to the target file name dest_file.
linux modify file permissions
The commands are:chmod
,chgrp
,chown
chmod command
The chmod command is very important and is used to change the access permissions of files or directories. It is used by users to control access permissions to files or directories.
Take a folder named "cc" under the main folder as an example. The following is a step-by-step introduction on how to modify permissions:
1. Open the terminal. Enter "su" (without quotation marks)
2. You will be asked to enter your password next. Enter your root password.
3. Assume that my folder is in the home directory and the address is /var/home/dengchao/cc. Suppose I want to change the file permissions to 777, then enter chmod 777 /var/home/userid/cc in the terminal and the permissions of the folder will become 777.
If you want to modify the permissions of folders and subfolders, you can use chmod -R 777 /var/home/userid/cc
The specific permissions (such as the meaning of 777, etc.) are explained below :
1.777 has 3 digits, the highest digit 7 is to set the file owner access permissions, the second digit is to set the group access permissions, and the lowest digit is to set the access permissions of others.
The permissions of each of them are represented by numbers. Specifically, there are these permissions:
2. First, let’s look at how to determine the permission value on a single bit. For example, the highest bit represents the file owner permission value. When the number is 7, 7 is represented by “rwx” – {4 (r) 2(w) 1(x)=7}–And if the value is 6, use “rw-” to represent –{4(r) 2(w) 0(x)=6}–, “-” It means that it does not have permission, here it means that it does not have "execution" permission.
If we set the access rights of other users to "r–", the value is 4 0 0 = 4
Many beginners will be confused at first, but it is actually very simple. Treat rwx as a binary number. If it is present, it is represented by 1, and if it is not, it is represented by 0. Then rwx can be represented as: 111
, and 111 in binary is 7.
3. Let’s take a look at how to determine the permissions on 3 digits. If we want to set permissions for a file, the specific permissions are as follows:
The file owner has "read", "write", and "execute" permissions, group users have "read" permissions, and other users have "read" permissions. "Permissions, the corresponding letters are expressed as "rwx r– r–", and the corresponding numbers are 744
Generally, the highest digit represents the file owner permission value, the second digit represents the group user permission, and the lowest bit indicates other user permissions.
Let’s give some examples to get familiar with.
例1:
$ chmod a+x sort
即设定文件sort的属性为:
文件属主(u) 增加执行权限
与文件属主同组用户(g) 增加执行权限
其他用户(o) 增加执行权限
例2:
$ chmod ug+w,o-x text
即设定文件text的属性为:
文件属主(u) 增加写权限
与文件属主同组用户(g) 增加写权限
其他用户(o) 删除执行权限
例3:
$ chmod u+s a.out
假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
–rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw——-”,即该文件只有其属主具有读写权限。
当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限),这就是s的功能。
因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。
例4:
$ chmod a–x mm.txt
$ chmod–x mm.txt
$ chmod ugo–x mm.txt
以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。
chgrp命令
功能:改变文件或目录所属的组。
语法:chgrp [选项] group filename¼
参数:
该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。
该命令的各选项含义为:
– R 递归式地改变指定目录及其下的所有子目录和文件的属组。
例1:
$ chgrp - R book /opt/local /book
改变/opt/local /book/及其子目录下的所有文件的属组为book。
chown 命令
功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户yusi,为了让用户yusi能够存取这个文件,root用户应该把这个文件的属主设为yusi,否则,用户yusi无法存取这个文件。
语法:chown [选项] 用户或组 文件
说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。
参数说明:
例1:把文件yusi123.com的所有者改为yusi。
$ chown yusi yusi123.com
例2:把目录/demo及其下的所有文件和子目录的属主改成yusi,属组改成users。
$ chown - R yusi.users /demo
例如:chown qq /home/qq (把home目录下的qq目录的拥有者改为qq用户)
例如:chown -R qq /home/qq (把home目录下的qq目录下的所有子文件的拥有者改为qq用户)
linux修改文件的时间
命令是:touch
Linux系统文件创建的时间并不是不能修改的,通过touch命令可以修改文件的时间,从而达到以假乱真的效果。
实例:将系统里某些文件修改为三个月前的时间:
当前系统文件信息如下:
[root@case test]# ls -l total 28 drwxr-xr-x 2 root root 4096 Jan 9 15:47 1333 -rwxrwxr-x 1 oracle oinstall 8143 Jan 9 14:41 3.sh drwxr-xr-x 2 root root 4096 Jan 9 15:49 444 -rw-r--r-- 1 root root 0 Jan 9 14:41 4.sh -rwxr-xr-x 1 root root 8143 Jan 9 14:44 77.sh -rwxrwxr-x 1 root root 54 Jan 9 16:03 find.sh
把所有的.sh文件修改到三个月前(2015年10月13)的时间。操作命令:
[root@case test]# touch -d “10/13/2013” *.sh
结果是:
[root@case test]# ls -l total 28 drwxr-xr-x 2 root root 4096 Jan 9 15:47 1333 -rwxrwxr-x 1 oracle oinstall 8143 Oct 13 00:00 3.sh drwxr-xr-x 2 root root 4096 Jan 9 15:49 444 -rw-r--r-- 1 root root 0 Oct 13 00:00 4.sh -rwxr-xr-x 1 root root 8143 Oct 13 00:00 77.sh -rwxrwxr-x 1 root root 54 Oct 13 00:00 find.sh
另外也可以单独修改时间或者月份,如下
以使用 am, pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000 。
touch -d “6:03pm” file touch -d “05/06/2000” file touch -d “6:03pm 05/06/2000” file
相关推荐:《Linux视频教程》
Permission | Value |
rwx rw- r– | 764 |
rw- r– r– | 644 |
664 |
The above is the detailed content of What are the commands to modify files in Linux?. For more information, please follow other related articles on the PHP Chinese website!