On Fri, Mar 17, 2006, Michael Lange wrote: >On Fri, 17 Mar 2006 00:36:35 -0700 >fortezza-pyt <[EMAIL PROTECTED]> wrote: > >> If there a semi-standard way to test if a file system has been mounted >> or not using Python? In the Linux command line, I can type "mount" and >> see all mounted file system, and then see if the one I am looking for is >> in the list. While I could replicate this with >> Python, I am curious if there is an easier way. >> > >Hi Fortezza, > >try os.path.ismount() .
That's fine if one knows what the mount points are. The more general problem is to get a list of mounted file systems. The most standard way I've found to get a list of mounted systems is to parse the output of the gdf program from the gnu fileutils compiled with the program prefix `g' so it's called gdf. The gdf program handles a lot of the dirty work, and its output is standard regardless of the underlying system, which you can't say about the system's mount or df commands. The routine below is one I've used for years (actually I used a perl version for a long time before switching primarily to python :-). # This aren't real file systems. pseudofilesys = \ dict(map((lambda x: (x, 1)), ('none', 'shmfs', 'procfs', 'tmpfs'))) gdf_cols = ('filesys', 'blocks', 'used', 'avail', 'use', 'dir') def mounted(): '''Get Mounted File Systems''' df = os.popen('gdf 2>/dev/null', 'r') df.readline() # skip first line mounted = [] for line in df.readlines(): line = line.strip() rec = dict(zip(gdf_cols, line.split(None, 5))) filesys = rec['filesys'] dir = rec.get('dir') if ( dir and not (filesys.find(':') >= 0 or pseudofilesys.get(filesys)) ): mounted.append(dir) df.close() return mounted Bill -- INTERNET: [EMAIL PROTECTED] Bill Campbell; Celestial Systems, Inc. URL: http://www.celestial.com/ PO Box 820; 6641 E. Mercer Way FAX: (206) 232-9186 Mercer Island, WA 98040-0820; (206) 236-1676 ``I presume you all know who I am. I am humble Abraham Lincoln. I have been solicited by many friends to become a candidate for the legistlature. My politics are short and sweet, like the old woman's dance. I am in favor of a national bank ... in favor of the internal improvements system, and a high protective tariff.'' -- Abraham Lincoln, 1832 _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor