我是Linux和Ubuntu的新手。当我不知道如何使用此OS进行操作时,我会在网上搜索并询问Ubuntu,并始终找到答案。
但这有时不是一个很好的答案,也不是完整的教程。无论如何,我都按照说明进行操作,但是我不知道所有命令的含义。
所以我的问题是:
- 当我按照教程进行操作时,我是否100%安全?
- 如果不是,那我怎么知道我有危险呢?
sudo
。
我是Linux和Ubuntu的新手。当我不知道如何使用此OS进行操作时,我会在网上搜索并询问Ubuntu,并始终找到答案。
但这有时不是一个很好的答案,也不是完整的教程。无论如何,我都按照说明进行操作,但是我不知道所有命令的含义。
所以我的问题是:
sudo
。
Answers:
TL; DR不,您不是100%安全的。或者换句话说,三思。;)
在不了解基本知识的情况下,请勿执行代码段。使用man
更多地了解一个命令或程序。如果您不了解,请使用Google或其他搜索门户。而且,如果您仍然怀疑,只需不执行代码即可。
你信任我吗?然后运行:
man man
好的,不危险,您会看到 man
但是下面的代码呢,您相信我吗?
$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")
不?好主意。让我们细分代码:
perl
Perl语言解释器
-MMIME::Base64
base64字符串的编码和解码
-0777ne
-0777
-将行分隔符更改为undef,使我们能够处理文件,一次将所有行都馈送到Perl。
-e
-(执行)标志是使我们能够指定要在命令行上直接运行的Perl代码的原因。
-n
-将输入逐行输入到Perl。
'print decode_base64($_)'
-解码一个字符串,该字符串保存在中$_
。
"ZWNobyAnQk9PSCEnCg=="
- 和这个?这是什么?
让我们开始测试。
我们知道,它就像base64一样,并且看起来已经编码。因此,使用以下命令解码字符串:
base64 --decode <<< "ZWNobyAnQk9PSCEnCg=="
输出是……好,不是很危险:
echo 'BOOH!'
现在,我们可以对perl做同样的事情
perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg=="
输出是令人惊讶的:
echo 'BOOH!'
但这很危险吗?这很危险:
$(…)
该结构执行括号中命令的输出。
试试吧,你相信我吗?
$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")
那是什么
c3VkbyBraWxsYWxsIG5hdXRpbHVzCg==
尝试一下...您相信我吗?
rm: it is dangerous to operate recursively on "/"
rm: use --no-preserve-root to override this failsafe
ZmluZCAvIC1kZWxldGUK
。(nb:认真,不要在扔掉的盒子外面那样做)
c3VkbyBybSAtcmYgL2V0Yw==
应该也可以很好地工作
我对此的一般假设是肯定的,因为askUbuntu的家伙通常都知道自己的出路。
但是,总的来说,我总是喜欢了解自己在做什么,因此,如果您不熟悉命令/语法,就可以寻求更广泛的解释。我敢肯定,最初帮助过的人不会介意分享他的进一步知识。
祝您好运,您使用Linux-miles做出了比竞争对手更好的选择!!:-)
man <command>
or <command> --help
/ command -h
。
有些博客绝对比其他博客好很多。是的,初学者很难说出区别。
第一,确保说明适用于您的ubuntu版本。非lts版本仅持续9个月左右。博客文章的持续时间更长。对于较旧版本有效的方法通常在较新版本中无效。
另外,如果他们没有解释如何撤消所做的更改并且您不知道如何做也不要撤消更改。
即使该应用程序位于ubuntu存储库中,许多博客也会告诉您从第3方ppa安装。这些东西都没有针对您的内核版本进行Beta测试。我的软件来源中没有任何PPA,除非真正必要,否则不会。