আমার এনভায়রনমেন্ট ভেরিয়ালে আপেক্ষিক পথে ফাইলের বেসনেম + এক্সটেনশন প্রয়োজন


0

আমার এনভায়রনমেন্ট ভেরিয়ালে আপেক্ষিক পথে ফাইলের বেসনেম + এক্সটেনশন প্রয়োজন। উদাহরণস্বরূপ: আমি যদি যুক্তিতে টাইপ করি ..\..\Appdata\bin\test.jpgতবে ফলাফলগত পরিবেশগত ভেরিটি থাকা উচিত test.jpg। আমি যদি ব্যাটের চূড়ান্ত মতো একটি যুক্তি টাইপ করি তবে sub1\sub2\input.pngএটি থাকা উচিত input.png। এটি delims=\সর্বশেষ ক্ষেত্রের জন্য বিবৃতি, সহ এবং চয়ন করার জন্য করা যেতে পারে । আমি জানি না কিভাবে শেষ ক্ষেত্রটি নির্বাচন করতে হয়।

উত্তর:


1

পোস্টে ব্যাচ এক্সট্র্যাক্টের পথ এবং একটি ভেরিয়েবলের ফাইলের নাম একটি পরিবেশের ভেরিয়েবল থেকে সমস্ত ফাইল-অংশ বের করার জন্য এই স্ক্রিপ্টটি পাওয়া যায়:

@ECHO OFF
SETLOCAL
set file=C:\Users\l72rugschiri\Desktop\fs.cfg
FOR %%i IN ("%file%") DO (
ECHO filedrive=%%~di
ECHO filepath=%%~pi
ECHO filename=%%~ni
ECHO fileextension=%%~xi
)

এবং .batস্ক্রিপ্টের প্রথম প্যারামিটার থেকে তথ্য আহরণের সম্পূর্ণ তালিকা :

%~1 - expands %1 removing any surrounding quotes (")
%~f1 - expands %1 to a fully qualified path name
%~d1 - expands %1 to a drive letter only
%~p1 - expands %1 to a path only
%~n1 - expands %1 to a file name only
%~x1 - expands %1 to a file extension only
%~s1 - expanded path contains short names only
%~a1 - expands %1 to file attributes
%~t1 - expands %1 to date/time of file
%~z1 - expands %1 to size of file

যা ব্যবহার করা যেতে পারে, উদাহরণস্বরূপ:

set file=%~f1
set filepath=%~dp1
set filename=%~nx1

অথবা স্থানীয় হিসাবে পরিবর্তনশীল জন্য:

for %%a in (..\Desktop\fs.cfg) do (
    set file=%%~fa
    set filepath=%%~dpa
    set filename=%%~nxa
)    
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.