Ve skutečnosti existuje způsob, není to skvělý způsob, ale je to způsob, haha!
Přidejte následující do /etc/passwd
soubor:
~:x:1111:99:special Character user:/test:/sbin/nologin
nahraďte 1111
jako UID něčím, co dává smysl, nahraďte /test
s adresářem, který chcete ~~ napodobit.
99
v mém systému je nobody
group Doporučuji, pokud to uděláte, abyste se ujistili, že jde o skupinu s ŽÁDNÝmi oprávněními k jakémukoli souboru, který bude někdy použit. Teoreticky s /sbin/nologin
jako shell by nemělo být možné jej používat a také nebude mít /etc/shadow
vstup, takže nebude mít heslo. Teoreticky by to mělo být v pořádku, ale ujistěte se, že vám to nějak nedovolí přihlásit se jako účet.
Jako okrajová poznámka:V žádném případě neříkám, že je to dobrý nápad, ale splní funkci, kterou chcete.
EDIT:Pro úplnost to navrhl VarunAgw:Můžete přidat uživatele jako obvykle s useradd -s /sbin/nologin -N tmp
a poté upravte /etc/passwd
a /etc/shadow
pro změnu uživatele tmp
na ~
a změňte umístění home directory
Můžete použít CDPATH a vložit adresář doslova nazvaný ~~
v jedné z vašich komponent CDPATH.
Od man bash
(ale CDPATH je k dispozici i v sh
)
Vyhledávací cesta pro příkaz cd. Toto je dvojtečkou oddělený seznam adresářů, ve kterých shell hledá cílové adresáře určené příkazem cd. Ukázková hodnota je ".:~:/usr".
To vám umožní udělat cd ~~
.
Pokud chcete dělat věci jako vi ~~/someFile
odkudkoli v adresářovém stromu, pak máte smůlu, pokud budete trvat na ~~
doslova, pokud nenabouráte svůj shell, ale můžete použít proměnné nebo proměnné prostředí k uložení vašich magických adresářů, takže můžete udělat, např. $tilda/someFile
Obvykle vkládám často používané soubory do zkráceně pojmenovaných adresářů ve svém domovském adresáři, abych k nim mohl přistupovat pomocí cest jako ~/b
nebo ~/l
.
Přirozeně můžete obvykle nahradit adresáře symbolickými odkazy na adresáře, jak chcete.