Kullanım durumlarda:
Program davranışını değiştirmek için program adını kullanabilirsiniz .
Örneğin, gerçek ikili için bazı sembolik bağlantılar oluşturabilirsiniz.
Bu tekniğin kullanıldığı ünlü örneklerden biri, sadece bir ikili ve birçok sembolik bağlantı kuran yoğun kutu projesidir. (ls, cp, mv vb.) Hedefleri küçük gömülü aygıtlar olduğu için depolama alanı kazanmak için yapıyorlar .
Bu aynı zamanda setarch
util-linux'da da kullanılır :
$ ls -l /usr/bin/ | grep setarch
lrwxrwxrwx 1 root root 7 2015-11-05 02:15 i386 -> setarch
lrwxrwxrwx 1 root root 7 2015-11-05 02:15 linux32 -> setarch
lrwxrwxrwx 1 root root 7 2015-11-05 02:15 linux64 -> setarch
-rwxr-xr-x 1 root root 14680 2015-10-22 16:54 setarch
lrwxrwxrwx 1 root root 7 2015-11-05 02:15 x86_64 -> setarch
Burada birçok yinelenen kaynak dosyadan kaçınmak veya kaynakları daha okunaklı tutmak için bu tekniği kullanıyorlar .
Başka bir kullanım durumu, çalışma zamanında bazı modülleri veya verileri yüklemesi gereken bir program olabilir. Program yoluna sahip olmak, modülleri program konumuna göre bir yoldan yüklemenizi sağlar .
Ayrıca, birçok program program adı dahil hata mesajları yazdırır .
Neden :
- Çünkü POSIX konvansiyonu (
man 3p execve
):
argv, yeni programa iletilen argüman dizelerinin bir dizisidir. Kurallara göre, bu dizelerin ilki, yürütülen dosyayla ilişkili dosya adını içermelidir.
- C standardıdır (en az C99 ve C11):
Argc değeri sıfırdan büyükse, argv [0] ile gösterilen dize program adını gösterir; argv [0] [0], program adı ana bilgisayar ortamında mevcut değilse, boş karakter olacaktır.
C Standardı "dosya adı" değil "program adı" yazdığını unutmayın.