[root@Rocky ~]# vim /etc/profileecho-e"\E[1;32mHi,dangerous!\E[0m"
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
WARNING! The remote SSH server rejected X11 forwarding request.
Activate the web console with: systemctl enable--now cockpit.socket
Last login: Fri Aug 4 04:58:27 2023 from 10.0.0.1
Hi,dangerous![student@Rocky ~]$ su - root
Password:
Hi,dangerous!# /etc/profile# 是系统范围内的全局配置文件,对所有用户都生效。它在用户登录时被执行,设置系统级别的环境变量和执行其他系统级别的配置。# 如果您只想在特定用户登录时显示该信息,而不是所有用户,可以将上述设置添加到用户的个人配置文件 ~/.bash_profile 或 ~/.bashrc 中。
4、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等
[root@Rocky ~]# cat ~/.vimrcset nu
setsofttabstop=4set expandtab
set ignorecase
setshiftwidth=4
autocmd BufNewFile *.sh exec":call SetTitle()"
func SetTitle()if expand("%:e")=='sh'
call setline(1,"#!/bin/bash")
call setline(2,"#")
call setline(3,"#**************************************************")
call setline(4,"#Author: sunxiaoshen")
call setline(5,"#Version: 1.0")
call setline(6,"#QQ: 2964238553")
call setline(7,"#Date: ".strftime("%Y-%m-%d"))
call setline(8,"#FileName: ".expand("%"))
call setline(9,"#URL: http://www.xiaoshen.com")
call setline(10,"#Description: The test script")
call setline(11,"#Copyright (C): ".strftime("%Y")." All rights reserved")
call setline(12,"#**************************************************")
call setline(13,"")
endif
endfunc
autocmd BufNewFile * normal G
# 含义解释如下# 用于自动设置在编辑 Shell 脚本文件(*.sh)时的一些编辑器选项和文件模板。下面是每行代码的含义解释:# set nu:设置行号显示,显示行号可以方便地定位到特定行。# set ts=4:设置 Tab 键的宽度为 4 个空格,使得缩进更加一致和可读。# set expandtab:将 Tab 键自动转换为空格,使得缩进时不会混合使用制表符和空格。# set ignorecase:设置对搜索时忽略大小写,搜索时不区分大小写。# set shiftwidth=4:设置缩进时的宽度为 4 个空格,使得代码缩进一致性更好。# 接下来是 autocmd 命令和 func 定义,它们主要用于在创建新文件时执行函数来插入模板内容:# autocmd BufNewFile *.sh exec ":call SetTitle()":针对以 .sh 结尾的文件,当创建新文件时自动执行 SetTitle() 函数。# func SetTitle():定义了名为 SetTitle() 的函数。# 在 SetTitle() 函数内,首先使用 expand("%:e") 取得当前文件的扩展名,并判断是否为 sh(Shell 脚本)文件。如果是,执行以下操作:# call setline(1,"#!/bin/bash"):将 #!/bin/bash 插入第一行,表示该脚本的解释器为 Bash。# 9-12. 通过 call setline() 函数分别在第 2-12 行插入了一些脚本的元信息,如作者、版本、联系方式、日期、文件名、URL、描述和版权信息。strftime("%Y") 用于获取当前年份。# 插入一个空行。# 最后一行是 autocmd 命令:# autocmd BufNewFile * normal G:在创建新文件后,将光标移动到最后一行。normal 命令使 Vim 执行普通模式下的 G 命令,将光标定位到文件末尾。# 这段代码的目的是自动设置 Vim 编辑器的选项,并在创建新的 Shell 脚本文件时为其添加一个基本的脚本模板,包含了作者信息、版本号、日期等字段。这样可以提高编写脚本的效率和一致性。