Rumah pangkalan data tutorial mysql 【库函数】linux之access函数

【库函数】linux之access函数

Jun 07, 2016 pm 03:44 PM
access linux fungsi

access函数 头文件:unistd.h 功 能: 确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。 用 法: int access(const char *filenpath, int mode); 或者int _acc

access函数

头文件:unistd.h 

功 能: 确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。

用 法: int access(const char *filenpath, int mode); 或者int _access( const char *path, int mode );

参数说明:

filenpath

文件或文件夹的路径,当前目录直接使用文件或文件夹名

备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WIN NT 中,所有的文件夹都有读和写权限

mode

要判断的模式

在头文件unistd.h中的预定义如下:

#define R_OK 4 /* Test for read permission. */

#define W_OK 2 /* Test for write permission. */

#define X_OK 1 /* Test for execute permission. */

#define F_OK 0 /* Test for existence. */

具体含义如下:

R_OK 只判断是否有读权限

W_OK 只判断是否有写权限

X_OK 判断是否有执行权限

F_OK 只判断是否存在

access函数程序范例:(参照百度例子对,将四种方式均添加进去)

#include
#include

int file_exists(char *filename)
{
 /*判断文件是否存在*/
 return (access(filename, F_OK) == 0);
}

int file_read(char *filename)
{
 /*判断文件是否可读*/
 return (access(filename, R_OK) == 0);
}

int file_write(char *filename)
{
 /*判断文件是否可写*/
 return (access(filename, W_OK) == 0);
}

int file_execute(char *filename)
{
 /*判断文件是否可执行*/
 return (access(filename, X_OK) == 0);
}

int main(void)
{
 printf("Does NOTEXIST.FIL exist: %s\n",
 file_exists("NOTEXISTS.FIL") ? "YES" : "NO");
 
 printf("Does NOTEXIST.FIL read: %s\n",
 file_read("NOTEXISTS.FIL") ? "YES" : "NO");
 
 printf("Does NOTEXIST.FIL write: %s\n",
 file_write("NOTEXISTS.FIL") ? "YES" : "NO");
 
 printf("Does NOTEXIST.FIL execute: %s\n",
 file_execute("NOTEXISTS.FIL") ? "YES" : "NO");
 
 return 0;
}


 想自测的话,用chmod命令来修改文本属性,用ls看文本的属性。

 

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tidak dapat log masuk ke mysql sebagai akar Tidak dapat log masuk ke mysql sebagai akar Apr 08, 2025 pm 04:54 PM

Sebab utama mengapa anda tidak boleh log masuk ke MySQL sebagai akar adalah masalah kebenaran, ralat fail konfigurasi, kata laluan tidak konsisten, masalah fail soket, atau pemintasan firewall. Penyelesaiannya termasuk: periksa sama ada parameter pengikat di dalam fail konfigurasi dikonfigurasi dengan betul. Semak sama ada kebenaran pengguna root telah diubahsuai atau dipadam dan ditetapkan semula. Sahkan bahawa kata laluan adalah tepat, termasuk kes dan aksara khas. Semak tetapan dan laluan kebenaran fail soket. Semak bahawa firewall menyekat sambungan ke pelayan MySQL.

C Language Compilation Compilation: Panduan terperinci untuk pemula ke aplikasi praktikal C Language Compilation Compilation: Panduan terperinci untuk pemula ke aplikasi praktikal Apr 04, 2025 am 10:48 AM

C Language Conditional Compilation adalah mekanisme untuk selektif menyusun blok kod berdasarkan keadaan kompilasi masa. Kaedah pengenalan termasuk: menggunakan arahan #if dan #Else untuk memilih blok kod berdasarkan syarat. Ekspresi bersyarat yang biasa digunakan termasuk STDC, _WIN32 dan LINUX. Kes praktikal: Cetak mesej yang berbeza mengikut sistem operasi. Gunakan jenis data yang berbeza mengikut bilangan digit sistem. Fail header yang berbeza disokong mengikut pengkompil. Penyusunan bersyarat meningkatkan kebolehgunaan dan fleksibiliti kod, menjadikannya boleh disesuaikan dengan pengkompil, sistem operasi, dan perubahan seni bina CPU.

【Rust Sendiri belajar】 Pengenalan 【Rust Sendiri belajar】 Pengenalan Apr 04, 2025 am 08:03 AM

1.0.1 Preface Projek ini (termasuk kod dan komen) telah direkodkan semasa karat saya yang diajar sendiri. Mungkin ada kenyataan yang tidak tepat atau tidak jelas, sila minta maaf. Jika anda mendapat manfaat daripadanya, ia lebih baik. 1.0.2 Mengapa Rustrust boleh dipercayai dan cekap? Karat boleh menggantikan C dan C, dengan prestasi yang sama tetapi keselamatan yang lebih tinggi, dan tidak memerlukan rekompilasi yang kerap untuk memeriksa kesilapan seperti C dan C. Kelebihan utama termasuk: Keselamatan Memori (mencegah penunjuk null dari dereferences, penunjuk menggantung, dan perbalahan data). Thread-safe (pastikan kod multi-threaded selamat sebelum pelaksanaan). Elakkan tingkah laku yang tidak ditentukan (mis., Arus dari batas, pembolehubah yang tidak diinisialisasi, atau akses kepada memori yang dibebaskan). Karat menyediakan ciri bahasa moden seperti generik

Di manakah perpustakaan fungsi bahasa C? Bagaimana untuk menambah perpustakaan fungsi bahasa C? Di manakah perpustakaan fungsi bahasa C? Bagaimana untuk menambah perpustakaan fungsi bahasa C? Apr 03, 2025 pm 11:39 PM

Perpustakaan Fungsi Bahasa C adalah kotak alat yang mengandungi pelbagai fungsi, yang dianjurkan dalam fail perpustakaan yang berbeza. Menambah perpustakaan memerlukan menyatakannya melalui pilihan baris perintah pengkompil, contohnya, pengkompil GCC menggunakan pilihan -L diikuti dengan singkatan nama perpustakaan. Jika fail perpustakaan tidak berada di bawah laluan carian lalai, anda perlu menggunakan pilihan -L untuk menentukan laluan fail perpustakaan. Perpustakaan boleh dibahagikan kepada perpustakaan statik dan perpustakaan dinamik. Perpustakaan statik secara langsung dikaitkan dengan program pada masa kompilasi, manakala perpustakaan dinamik dimuatkan semasa runtime.

Cara menyelesaikan MySQL tidak dapat dimulakan Cara menyelesaikan MySQL tidak dapat dimulakan Apr 08, 2025 pm 02:21 PM

Terdapat banyak sebab mengapa permulaan MySQL gagal, dan ia boleh didiagnosis dengan memeriksa log ralat. Penyebab umum termasuk konflik pelabuhan (periksa penghunian pelabuhan dan ubah suai konfigurasi), isu kebenaran (periksa keizinan pengguna yang menjalankan perkhidmatan), ralat fail konfigurasi (periksa tetapan parameter), rasuah direktori data (memulihkan data atau membina semula ruang meja), isu ruang jadual InnoDB (semak fail ibdata1) Apabila menyelesaikan masalah, anda harus menganalisisnya berdasarkan log ralat, cari punca utama masalah, dan mengembangkan tabiat sandaran data secara teratur untuk mencegah dan menyelesaikan masalah.

Apakah 5 komponen asas Linux? Apakah 5 komponen asas Linux? Apr 06, 2025 am 12:05 AM

Lima komponen asas Linux adalah: 1. Kernel, menguruskan sumber perkakasan; 2. Perpustakaan sistem, menyediakan fungsi dan perkhidmatan; 3. Shell, antara muka pengguna untuk berinteraksi dengan sistem; 4. Sistem fail, menyimpan dan menganjurkan data; 5. Aplikasi, menggunakan sumber sistem untuk melaksanakan fungsi.

Penyelesaian kepada kesilapan yang dilaporkan oleh MySQL pada versi sistem tertentu Penyelesaian kepada kesilapan yang dilaporkan oleh MySQL pada versi sistem tertentu Apr 08, 2025 am 11:54 AM

Penyelesaian kepada ralat pemasangan MySQL adalah: 1. Berhati -hati memeriksa persekitaran sistem untuk memastikan keperluan perpustakaan ketergantungan MySQL dipenuhi. Sistem operasi dan keperluan versi yang berbeza adalah berbeza; 2. Berhati -hati membaca mesej ralat dan mengambil langkah -langkah yang sepadan mengikut arahan (seperti fail perpustakaan yang hilang atau kebenaran yang tidak mencukupi), seperti memasang kebergantungan atau menggunakan arahan sudo; 3 Jika perlu, cuba pasang kod sumber dan periksa dengan teliti log kompilasi, tetapi ini memerlukan pengetahuan dan pengalaman Linux tertentu. Kunci untuk menyelesaikan masalah akhirnya adalah dengan teliti memeriksa persekitaran sistem dan maklumat ralat, dan merujuk kepada dokumen rasmi.

Rangka Kerja dan Fungsi Stack: Cara Membuat Overhead CPU Rangka Kerja dan Fungsi Stack: Cara Membuat Overhead CPU Apr 03, 2025 pm 08:09 PM

Saya terobsesi dengan semua aspek sains komputer dan kejuruteraan perisian, dan saya mempunyai keinginan istimewa untuk pengaturcaraan yang mendasari. Sangat menarik untuk meneroka mekanisme interaksi antara perisian dan perkakasan dan menganalisis tingkah laku sempadan mereka. Malah dalam pengaturcaraan aplikasi lanjutan, pengetahuan ini dapat membantu debug dan menyelesaikan masalah, seperti penggunaan memori stack. Memahami bagaimana memori stack berfungsi, terutamanya apabila berinteraksi dengan perkakasan, adalah penting untuk mengelakkan dan menyahpepijat masalah. Artikel ini akan meneroka bagaimana fungsi panggilan yang kerap dalam program boleh membawa kepada overhead dan mengurangkan prestasi. Membaca artikel ini memerlukan anda mempunyai asas pengetahuan tertentu stack, memori timbunan dan daftar CPU. Apakah kerangka timbunan? Katakan anda menjalankan program di komputer anda. Sistem operasi memanggil penjadual, memperuntukkan memori ke program anda, dan menyediakan CPU untuk melaksanakan arahan. ini

See all articles