구문: os.path.realpath(경로) 매개변수: 경로: 경로 유사 파일 시스템 경로를 나타내는 객체. 경로류 객체는 경로를 나타내는 문자열 또는 바이트열 객체입니다. 반환 유형: 이 메서드는 표준 경로를 나타내는 문자열 값을 반환합니다.
소프트 링크 또는 심볼릭 링크 생성
Unix 또는 Linux에서 ln 명령을 사용하여 소프트 링크 또는 심볼릭 링크를 생성할 수 있습니다. 다음은 명령줄에서 심볼릭 링크를 만드는 구문입니다.$ ln -s {source-filename} {symbolic-filename}
예제 1
def realpath(self, spec, key): """ 사양의 경로 키를 확인하고 업데이트합니다. realpath, 작업 디렉토리 기반 """ 키가 사양에 없는 경우: 이제 사양[키]가 아닌 경우 반환: logger.warning( "`%s`의 실제 경로를 확인할 수 없습니다. ` 정의되지 않았기 때문에", 키) return check = realpath(join(spec.get( WORKING_DIR, ``), spec[key])) if check != spec[key]: spec[key] = check logger.warning( "실제 경로 `%s`이(가) `%s`(으)로 확인되었으며 사양이 업데이트되었습니다.", 키, 확인 ) return che ck # 관련 메서드 설정
예 2
def get_rp_stripper(strip_path): """ 스트립 ``realpath`` of `strip_path` from string 매개변수 ---------- strip_path: str 문자열의 시작 부분에서 제거할 경로입니다. ``realpath(strip_path) + os.path.sep`에 의해 ``strip_prefix``로 처리됨 `. 반환 ------- 스트리퍼: ``stripper(a_string)``가 존재하는 경우 ``a_string``에서 ``strip_prefix``를 제거하고, 그렇지 않으면 ``a_string``을 전달하는 기능을 수정하지 않은 """ 반환 get_prefix_stripper(realpath(strip_path) + os.path.sep)
예 3
def test_toolchain_standard_not_implemented(self): spec = Spec() with self.assertRaises(NotImplementedError): self.toolchain(spec) with self.assertRaises(NotImplementedError): self.toolchain.assemble(spec) with self.assertRaises(NotImplementedError): self.toolchain.link(spec) # tempfile 기반으로 spec에 build_dir이 설정되어 있는지 확인 self.assertTrue(spec[`build_dir`].startswith( realpath(tempfile.gettempdir()))) # 또한 제대로 삭제되었습니다. self.assertFalse(exists(spec[`build_dir`] ))
예제 4
def find_system_jdks(): """ 유효한 JD 세트를 반환합니다. 표준 위치를 검색하여 K 디렉토리. """ 베이스 = [ `/라이브러리/Java/JavaVirtualMachines`, `/usr/lib/jvm`, `/usr/java`, `/usr/jdk/instances`, r`C:Program FilesJava` ] jdks = set() 베이스의 베이스: if isdir(base): os.listdir(base)의 n: jdk = join(base, n) mac_jdk = join(jdk, `Contents`, `Home`) if isdir(mac_jdk ): jdk = mac_jdk if is_valid_jdk(jdk): jdks.add(realpath(jdk)) 반환 jdks
예제 5
def _expand_dirs_to_files(files_or_dirs, recursive=False): files = [] files_or_dirs = _ensure_list(files_or_dirs) for file_or_dirs=. "https://python.engineering/python-os-path-realpath-method/">realpath(file_or_dir) if op.isdir(file_or_dir): # `.`로 시작하는 디렉터리 이름을 건너뜁니다. if _to_skip(file_or_dir): 계속 # 재귀적으로 디렉토리를 방문하여 파일을 추가합니다. if recursive: files.extend(_expand_dirs_to_files([op.join(file_or_dir, file) for file in os.listdir(file_or_dir)], recursive=recursive) ) else: files.extend([op.join(file_or_dir, file) for file in os.listdir(file_or_dir)]) elif `*` in file_or_dir: files.extend(glob.glob(file_or_dir)) else: files.append (file_or_dir) 파일 반환
예 6
def getSubdirs(path, baseNamesOnly=True, excludePythonModulesDirs=True): """주어진 경로에 대한 하위 디렉터리 목록을 제공합니다."" " subdirs = [] try: path = realpath(경로) + os.listdir의 항목에 대한 sep (경로): 후보 = 경로 + 항목 if isdir(후보): if excludePythonModulesDirs: modFile = 후보 + sep + "__init__.py" if Existing(modFile): baseNamesOnly인 경우 계속: subdirs.append(item) else: subdirs.append (후보) 제외: 반환 하위 디렉토리 전달
예제 7
def get_dataset(num_points): 이름 = `ModelNet10` 경로 = osp.join(osp.dirname(osp.실제 경로(__file__)), `..`, `데이터`, 이름) pre_transform = T.NormalizeScale() 변환 = T.SamplePoints(num_points) train_dataset = ModelNet( 경로, 이름=`10`, train=True, transform=transform, pre_transform=pre_transform) test_dataset = ModelNet( path, name=`10`, train=False, transform=transform, pre_transform=pre_transform) return train_dataset, test_dataset
예제 8
def getParameters(self): """검색 매개변수가 있는 사전 제공""" parameters = {`term`: self.findCombo.currentText(), `case`: self.caseCheckBox.isChecked( ), `전체`: self.wordCheckBox.isChecked(), `regexp`: self.regexpCheckBox.isChecked()} if self.projectRButton.isChecked(): parameters[`in-project`] = True 매개변수[`in- 열림`] = 거짓 매개변수[`in-dir`] = `` elif self.openFilesRButton.isChecked(): 매개변수[`in-project`] = F alse 매개변수[`in-opened`] = True 매개변수[`in-dir`] = `` else: 매개변수[`in-project`] = 거짓 매개변수[`in-opened`] = 거짓 매개변수[`in-dir `] = 실경로( self.dirEditCombo.currentText().strip()) 매개변수[`파일 -filter`] = self.filterCombo.currentText().strip() 반환 매개변수
예제 9
def _check_if_pyc(fname): """확장자가 . pyc, .py이면 거짓, 그렇지 않으면 없음"" from imp import find_module from os.path import realpath, dirname, basename, splitext # find_module() 파일 경로의 파일 경로를 정규화합니다. filepath = realpath(fname) dirpath = dirname(filepath) module_name = splitext(basename(filepath))[0] # 유효성 검사 및 가져오기 시도: fileobj, fullpath, (_, _, pytype) = find_module(module_name, [dirpath]) 제외 ImportError : IOError("설정 파일을 찾을 수 없습니다. " "경로가 틀릴 수 있습니다!: {0}".format(filepath)) return pytype, fileobj, fullpath
예제 10
def get_planetoid_dataset(name, normalize_features=False, transform= 없음): 경로 = osp.join(osp.dirname(osp.실제 경로(__file__)), `..`, `data`, name) dataset = 변환이 None이 아니고 normalize_features: dataset.transform = T.Compose([T.NormalizeFeatures(), transform]) elif normalize_features: dataset인 경우 Planetoid(경로, 이름)입니다. 변환 = T.NormalizeFeatures() elif 변환이 없음이 아님: dataset.transform = 변환 반환 데이터 세트
예제 11
def _setup_logger(cls, log_file=None): formatter = 로깅. 포맷터( fmt="%(asctime)s %(levelname)-8s %(message)s", datefmt="%Y-%m-%d %H:%M:%S" ) screen_handler = logging.StreamHandler( stream=sys.stdout) screen_handler.setFormatter(포맷터) logger = logging.getLogger(cls.__name__) logger.setLevel(logging.DEBUG) logger.addHandler(screen_handl 어) log_file인 경우: file_handler = logging.FileHandler(실제 경로(log_file), mode="w" ) file_handler.setFormatter(포맷터) logger.addHandler(file_handler) 리턴 로거
예제 12
def bro_server(bro_file, interface="eth0", bro_path="/usr/local/ bro/bin/bro"): u""" Ë∑ëbroÊúçâä°ËøõÁ®ã """ # Ëé∑èñÁªùÂØπË∑ØÂæÑ bro_file = 경로.실제 경로(bro_file) http_file = "/usr/local/bro/share/bro/base/protocols/http/main.bro" bro_scripts = ` `.join([bro_file, http_file ]) cmd = "sudo {bro_path} -C -b -i {인터페이스} {bro_scripts}" cmd = cmd.format(bro_path=bro_path, 인터페이스=인터페이스, bro_scripts=bro_scripts) msg = "cmd는: %s" % cmd logging.info(msg) # pwd를 /tmp로 변경 tmp_dir = path.join(path.dirname(path.실제 경로(__file__)), `../../tmp/`) chdir(tmp_dir) 결과 = r un(cmd) logging.info(result.__dict__)
예제 13
def ProcessFlags(env, flags): for f in flags: if f: env.MergeFlags(str( f)) # enumerate(env.get("CPPPATH", [])): if isdir(p): env[`CPPPATH`][i] = realpath(p) # 기본 제공되거나 # -D 옵션과 함께 제공된 이름의 이전 정의를 취소합니다. // Issue #191 undefines = [u for u in env.get("CCFLAGS", []) if u.startswith("-U")] undefines: undefines의 undef: env[`CCFLAGS`].remove(undef) env. Append(_CPDEFFLAGS=" %s" % " ".join(undefines))
예제 14
def _get_settings_helper(self): main_dir = path.dirname(경로.실제 경로(__file__)) main_dir = 경로.실제 경로(path.join(main_dir, `..`, `..`)) default_filepath = path.join(main_dir, `default_settings. yml`) user_filepath = path.join(main_dir, `settings.yml`) args = self._get_args() if args.settings_path: user_filepath = args.settings_path # 기본 파일을 열고 open(default_filepath)을 default_filestream으로 하여 버전 정보를 얻습니다. : default_filesettings = yaml.load(default_filestream) # FIXME: 사용되지 않음 current_version = default_filesettings[`version`].split(`.`) # flake8: noqa if path.exists(user_filepath): filepath = user_filepath else: filepath = default_filepath with open(filepath) as setting_file: self.settings = yaml.load(setting_file, _OrderedLoader) return SpecialDict(**self.settings)
예제 15
def resolve_rpath(lib_path, rpaths ): """ `@rpath`가 해결된 `lib_path`를 반환합니다. `lib_path`에 `@rpath`가 없으면 그대로 반환됩니다. `lib_path`에 `@rpath`가 있으면 발견된 첫 번째 `rpaths`/`lib_path` 조합을 반환합니다. `rpaths`에서 라이브러리를 찾을 수 없으면 자세한 경고가 인쇄되고 `lib_path`가 있는 그대로 반환됩니다. 매개변수 ---------- lib_path: str 라이브러리 파일의 경로로, `@rpath`로 시작하거나 시작하지 않을 수 있습니다. rpaths: sequence of str 검색 경로의 시퀀스, 일반적으로 `get_rpaths` 호출에서 가져옵니다. 반환 ------- lib_path: str 해석된 라이브러리가 있는 str realpath. """ if not lib_path.startswith(`@rpath/`): return lib_path lib_rpath = lib_path.split(`/`, 1)[1] rpath의 rpath: rpath_lib = 실제 경로(pjoin(rpath, lib_rpath)) if os.path.exists(rpath_lib): return rpath_lib warnings.warn( "{ 0} 경로: {1}".format( lib_path, ` `.join(실제 경로) path) for path in rpaths), ) ) return lib_path
예제 16
def wheel_libs(wheel_fname, filt_func=None): """ Python 휠로 라이브러리 종속성 분석 반환 종속성 트리 덤프에 이 루틴을 사용합니다. 매개변수 ---------- wheel_fname: str 휠의 파일 이름 filt_func: 없음 또는 호출 가능, 선택사항 없음인 경우 모든 파일에서 라이브러리 종속성을 검사합니다. 호출 가능한 경우 파일 이름을 인수로 받아들이고 파일을 검사해야 하는 경우 True를 반환하고 그렇지 않은 경우 False를 반환합니다. 반환 ------- lib_dict: (``libpath``, ``dependings_dict``) (키, 값) 쌍이 있는 사전 사전. ``libpath``는 휠 트리 내에 있는 경우 휠 루트 경로를 기준으로 종속되는 라이브러리입니다. ``dependings_dict``는 (``depending_lib_path``, ``install_name``)의 (키, 값)입니다. 다시 말하지만, ``depending_lib_path``는 휠 트리 내에 있는 경우 휠 루트 경로에 상대적인 라이브러리입니다. TemporaryDirectory()를 tmpdir로 사용하는 """: zip2dir(wheel_fname, tmpdir) lib_dict = tree_libs(tmpdir, filt_func) return stripped_lib_dict(lib_dict, 실제 경로(tmpdir) + os.path.sep)
예제 17
def main(): 파서 = OptionParser( usage="%s WHEEL_OR_PATH_TO_ANALYZE " % sys.argv[0] + __doc__, version="%prog " + __version__) parser.add_options([ Option("-a", "--all", action="store_true", help="모든 종속성 표시) , 시스템 라이브러리 포함"), Option("-d", "--depending", action="store_true", help="종속성에 따라 라이브러리 표시")]) (opts, 경로) = parser.parse_args() if len(paths) < 1: parser.print_help() sys.exit(1) multi = len(paths) > 1 경로의 경로: if multi: print(path + `:`) indent = ` ` else: indent = `` isdir(경로): lib_dict = tree_libs(경로) lib_dict = stripped_lib_dict(lib_dict, 실제경로 (getcwd()) + psep) e lse: lib_dict = wheel_libs(경로) 키 = sorted(lib_dict) if not opts.all: keys = [key for key in key if filter_system_libs(key)] if not opts.depending: if len(keys): print(indent + (` ` + 들여쓰기).join(keys)) 계속 i2 = 들여쓰기 + ` ` 키 입력: print(indent + key + `:`) libs = lib_dict[key] if len(libs): print(i2 + (` ` + i2).join(libs))
예제 18
def test_given_directory(): # InGivenDirectory cwd = getcwd()를 InGivenDirectory()를 tmpdir로 테스트: assert_equal( tmpdir, abspath(cwd)) assert_equal(tmpdir, abspath(getcwd())) InGivenDirectory(MY_DIR)를 tmpdir로 사용: assert_equal(tmpdir, MY_DIR) assert_equal(실제 경로(MY_DIR), 실제 경로(abspath (getcwd()))) # 주어진 디렉토리를 삭제하고 있었습니다! 지금은 그렇지 않은지 확인하십시오. assert_true(isfile(MY_PATH))
예제 19
def decisionClean(workDir, architecture,aggressiveCleanup): """ 실제로 삭제하지 않고 삭제할 항목을 결정합니다. - 모든 항목 찾기 "BUILD"의 symlinks - "BUILD"의 모든 디렉토리 찾기 - symlink """가 없는 경우 디렉토리 삭제 예약 symlinksBuild = [os.readlink(x) for x in glob.glob("%s/ BUILD/*-latest*" % workDir)] # $WORK_DIR/TMP는 항상 정리해야 합니다. 이것은 압축을 푸는 동안 공간이 부족한 경우에만 # 발생하지 않습니다. # $WORK_DIR//store도 정리할 수 있습니다. # 실제 tarball이 빌드된 후 필요하지 않기 때문입니다. toDelete = ["%s/TMP" % workDir] 공격적 정리인 경우: toDelete += ["%s/TAS/%s/store" % (workDir, 아키텍처), "%s/SOURCES" % (workDir)] allBuildStuff = glob.glob("%s/BUILD/*" % workDir) toDelete += [symlinksBuild에서 path.islink(x)가 아니고 basename(x)이 아닌 경우 allBuildStuff에서 x의 경우] installGlob ="%s/%s/ */" % (workDir, architecture) installedPackages = set([dirname(x) for x in glob.glob(installGlob)]) symlinksInstall = [] for x in installedPackages: symlinksInstall += [경로.실제 경로(y) in glob.glob(x + "/latest*")] toDelete += [x for x path.islink(x) 및 path가 아닌 경우 glob.glob(installGlob+ "*")에서.realpath(x) in symlinksInstall] toDelete = [x for x in toDelete if path.exists(x)] return toDelete
예제 20
def _get_script_dir(follow_symlinks: bool = True ) -> 경로: # 신탁 저장소에 대한 경로를 얻는 것은 까다롭습니다. OS X, Linux 및 Windows의 미묘한 차이로 인해 if getattr(sys, "frozen", False): # py2exe, PyInstaller, cx_Freeze path = Path(sys.executable).absolute() else: path = Path(inspect.getabsfile (_get_script_dir)) 만약 follow_symlinks: path = Path(realpath(path)) return path.parent
아카이브
os.path.realpath()
는 경로에 있는 모든 심볼릭 링크를 제거하여 지정된 파일 이름의 표준 경로를 가져오는 데 사용됩니다.
구문: os.path.실제 경로(경로)
매개변수:
경로 : A 파일 시스템 경로를 나타내는 경로류 객체.
경로류 객체는 경로를 나타내는 문자열 또는 바이트 객체입니다.반환 유형: 이 메서드는 표준 경로를 나타내는 문자열 값을 반환합니다.
소프트 링크 또는 심볼릭 링크 만들기
Unix 또는 Linux에서는 ln 명령을 사용하여 소프트 링크 또는 심볼릭 링크를 만들 수 있습니다.¬†다음 다음은 명령줄에서 심볼릭 링크를 생성하기 위한 구문입니다.
$ ln -s {source-filename} {symbolic-filename}
예:
예:
위 출력에서 " / home / ihritik / Desktop / 파일(바로가기) .txt "는 심볼릭 링크입니다.
코드: os.path 사용.realpath () 표준 경로 및 해상도 기호 링크를 가져오는 방법.
¬† ¬† ¬† ¬† ¬† ¬† < 코드 클래스 = "일반"> 경로 <코드 클래스 = "키워드"> = <코드 클래스 = "문자열"> "/../../ GeeksForGeeks / sample.py" ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† |
종료:
/ 홈 / ihritik / 문서 / 파일(원본) .txt /GeeksForGeeks/sample.py /home/ihritik/file.txt /home/ihritik/Downloads /file.txt