我有一个由windows系统生成的CSV文件。然后将该文件移动到linux。linux环境是NAME="Red Hat Enterprise Linux Server".VERSION="7.3 (Maipo)".ID="rhel“。
当我使用vi编辑器时,所有的字符都是可见的。例如,给出了一行:"Sarah--bitte nicht löschen“。
但是当我猫文件时,我得到类似于"Sarah--bitte nicht l▒schen“之类的东西。
此文件由数据存储应用程序使用,并且此unicode字符为"?“在数据存储中。由
可能重复: 从内变根
这可能发生在任何人身上。管理类型:
vi /etc/resolv.conf
作为一个普通用户。他编辑/etc/resolv.conf文件,但是当他想要点击:x时,他突然注意到他正在以只读模式编辑该文件,因为他使用的是普通用户,而不是根用户。
是否有任何vi命令来获取根权限,这样管理员就不必访问:q!、sudo su -和vi /etc/resolv.conf并再次编辑它?
我试着搜索答案,但可能我的问题表达错了,我找不到它。
因此,在我自己的Linux环境中,当我退出"vi“时,编辑窗口的内容仍然停留在shell窗口中。在输入"vi“之前,我不能只滚动屏幕来查看之前输入的命令。我曾经在某些环境中(以不同的用户身份),一旦退出" vi ",vi命令就会显示为一个常规命令行,后面是我之前输入的所有命令。我试着寻找我喜欢的行为的设置,但我做不到。有人能帮我吗?
如果没有在我的Linux系统上安装Emacs,Bash命令行编辑默认模式仍然是Emacs。在没有Emacs的情况下,这是如何工作的?
我试着搜索Bash源代码,但还是无法理解。Bash是否将Emacs集成在自己的内部?
$ set -o
allexport off
braceexpand on
emacs on
: :
vi off
xtrace off
我有一个拥有Linux Ubuntu操作系统的设备。我用SSH连接到它。当输入cat /proc/version命令时,我的Linux版本如下所示:
Linux version 3.2.40-g996c4d7-dirty (sysmocom@vagrant-ubuntu-precise) (gcc version 4.6.3 20111117 (prerelease) (GCC) ) #1 PREEMPT Mon Oct 7 8:28:29 CEST 2013.
我用vi命令(vi /etc/network/interfaces)更改了IP设置,但在写单词"address“时犯了错误。
我已经使用这个shell脚本成功地改变了linux中的文本。
vi -e .bash_profile << END
i
PATH=\$PATH:\$HOME/bin:/usr/pgsql-9.4/bin
export PATH
PGDATA=/usr/pgsql-9.4/data
export PGDATA
.
w
q
END
但我有个问题。
如果我执行了两次脚本,然后在文本文件中复制。
所以,我想防止这种情况。我怎么才能修好它?
linux命令"lsof“返回正在访问的文件,我在shell中尝试使用vi打开一个文件,用kwrite打开另一个文件,然后返回并得到vi的进程,但没有kwrite进程,如下所示
[linux@localhost shell_ex]$ lsof +d .
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 3458 linux cwd DIR 253,2 50 953101 .
bash 3747 linux cwd DIR 253,2 50 95
刚买了一台全新的Mac电脑,正准备准备上学用的东西。我需要从终端运行"open .profile“命令,但是我收到以下信息:
The file /Users/user/.profile does not exist
我在网上读到了另一个选项,如果发生这种情况,我应该运行命令"vi.profile“来创建文件。但是,这将返回以下错误消息:
-bash: vi.profile: command not found
我是Mac/Linux的新手,如果任何人有任何帮助/建议,我将不胜感激。
我最近在我的机器上升级到Fedora 33 (Linux5.9.16-200)。我正在运行vim增强版本8.2。当我输入sudo vim (甚至sudo vi)来编辑具有管理权限的文件时,我会得到以下错误。
sudo: __vi_internal_vim_alias: command not found
我不知道是什么原因造成了这种情况。没有sudo的情况下,Vim装载很好。你能告诉我如何解决这个问题吗?谢谢。
更新:在执行which vim时,我得到以下结果。
alias vim='__vi_internal_vim_alias'
__vi_internal_vim_